开发一个最普通的java web项目。框架和数据库设计好之后开始编码,开始的时候需要考虑的有:
1.拦截器。防止非登录情况下登录;登录的时候记录进入日志文件。贴上一个简单列子:
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { Locale locale = RequestContextUtils.getLocaleResolver(request).resolveLocale(request); request.getSession().setAttribute("currentLocale",locale.getLanguage()); boolean isLogin = true; String contextPath = request.getContextPath(); String requestURI = request.getRequestURI(); if(!isIgnoreURI(contextPath,requestURI)){ if(request.getSession().getAttribute(Constant.CURRENT_USER) == null){ logger.info("User is not logged. Visit the URI:" + requestURI); isLogin = false; response.sendRedirect(contextPath + "/tologin.sa"); } } return isLogin; } /** * @Title: isIgnoreURI * @Description: 是否为忽略的URI(不进行拦截的URI) * @param root 项目名称 * @param uri 访问的URI * @return boolean 是则返回TRUE,不是则返回FALSE * @throws */ private boolean isIgnoreURI(String root,String uri){ boolean flag = false; if(isStaticResource(uri) || isWhiteSet(root, uri) || isWhiteList(root, uri)){ flag = true; } return flag; }
日志的记录拦截器:
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { Map<String,String> parameterMap = new ParameterMap<String,String>(); Enumeration<String> enumeration = request.getParameterNames(); while(enumeration.hasMoreElements()){ String str = enumeration.nextElement(); String[] values = request.getParameterValues(str); StringBuffer valueStrBuffer = new StringBuffer("["); for(int i = 0; i < values.length; i++){ valueStrBuffer.append(values[i] + ","); } int index = valueStrBuffer.lastIndexOf(","); valueStrBuffer.replace(index, index + 1, ""); valueStrBuffer.append("]"); parameterMap.put(str, valueStrBuffer.toString()); } if(parameterMap.keySet().size() > 0){ logger.info("User visits: " + request.getRequestURI() + ", request parameter:" + parameterMap); } return true; }
2.考虑session管理。包括session多久过期,session存入等内容。以及如果获取session都可以自己封装方法。
3.登录处理。这个是最常见的了。
4.异常处理。一般的代码我们都需要自己定义很多异常来进行处理。
相关推荐
Java Web的特性包括安全性、可移植性以及强大的服务器端处理能力,这些都是构建大规模、高并发票务系统的基础。 SSH框架是Java Web开发中广泛使用的三大框架集成,它将Struts2用于视图层,负责处理HTTP请求和展示...
【基于Java的Web在线考试系统设计】是一种利用Java技术构建的网络考试平台,它结合了Web技术和数据库管理,为用户提供了一种便捷、高效且灵活的考试解决方案。此系统设计适用于Java开发者的学习研究,同时,也适合...
根据提供的文件信息,我们可以归纳出一系列与Java Web开发相关的知识点,特别是针对视频教程中的项目案例。下面将详细探讨这些知识点: ### Java Web开发基础 1. **Java Web概述**: - Java Web主要指的是利用...
它包括了 Java SE 和 Java EE 平台上的一系列工具和库,如 Java API for XML Web Services (JAX-WS), Java API for XML Binding (JAXB) 等,为开发者提供了全面的支持来构建复杂的 Web 服务应用。 #### 三、Java ...
综上所述,图书管理系统采用MySQL和Java Web技术,构建了一个高效、可靠的图书信息管理平台。其核心功能的实现依赖于数据库设计、Java Servlet和JSP的交互,以及合理的架构设计。这样的系统不仅能够满足日常的图书...
本PPT详细讲解了Java Web开发的基础知识和技术要点,帮助开发者掌握这一领域的核心技能。 **一、Java Web基础** Java Web 开发基于Java Servlet和JavaServer Pages (JSP) 技术。Servlet是Java编写的服务器端程序,...
【基于Java+Web的在线Java编辑器】是一种利用现代Web技术构建的编程工具,它针对传统编程语言编译器安装复杂、环境配置繁琐的问题,提供了一种更便捷、易用的解决方案。在线Java编辑器利用Java Web技术,使得用户...
Java Web开发是软件开发领域中的一个重要分支,它涵盖了使用Java语言进行Web应用程序的构建和部署。这份"JAVA WEB开发实战经典培训【课堂笔记】"是由MLDN李兴华提供的专业培训资料,主要以PDF格式记录了整个课程的...
本项目提供了基于Java Web的旋转抽奖转盘的源代码,让我们来详细探讨其背后的实现原理和技术要点。 1. **前端展示** - HTML/CSS/JavaScript:前端部分主要负责抽奖转盘的图形绘制和动画效果。HTML结构定义了转盘的...
这个系统非常适合于作为课程设计或毕业设计的参考,因为它提供了完整的源码,有助于学习者理解和掌握Java Web开发的实际流程和技术要点。 总结来说,基于Java Web的幼儿园管理系统利用了Java的强大功能和EasyUI的...
本文档将详细介绍如何构建这样一个系统,并重点介绍其实现原理和技术要点。 #### 二、关键技术点分析 1. **HTML与JavaScript基础**: - HTML用于构建页面结构。 - JavaScript用于处理前端逻辑,如按钮点击事件等...
通过以上知识点的学习,读者不仅能够系统地掌握Tomcat与Java Web开发的基本原理和技术要点,还能了解到在实际项目开发过程中需要注意的问题和解决方法。这对于想要从事Java Web开发的技术人员来说,无疑是一份宝贵的...
总的来说,"简单的图书馆管理系统(JAVA)"是一个典型的JAVA Web项目,它结合了JAVA的编程优势、MySQL的数据库管理和Web开发的实践。通过学习和理解这个系统,开发者可以深化对JAVA Web开发流程的理解,掌握数据库...
### Java Web开发进阶知识点梳理 #### 一、基础级知识点 **1.1 面向对象基础** - **定义**: 面向对象编程(Object-Oriented Programming,OOP)是一种程序设计思想,它将现实世界中的事物抽象为类和对象,并通过...
本项目——"基于Java web的房屋出租系统",是利用Java EE(Enterprise Edition)平台构建的一个完整的Web应用程序,旨在提供一个便捷、高效的房源信息发布和租赁服务。以下是该系统的实现细节和技术要点。 首先,该...
本项目旨在通过Java技术栈构建一套完整的管理系统,满足企业的日常运营需求。 #### 1.2 项目目标 - 开发一个功能全面且易于扩展的Java管理系统。 - 提高数据处理效率及准确性,简化操作流程。 - 实现对业务流程的...
6. **可扩展性设计**:为了满足未来业务发展的需求,JAVA SMART系统在设计之初就充分考虑到了系统的可扩展性。例如,在数据库设计时预留了足够的字段空间;在服务端设计时考虑到了负载均衡等因素。 #### 关键技术点...
本案例旨在介绍如何使用Java Web技术构建一个办公自动化管理系统,以提高办公效率,实现无纸化办公。 1. 需求分析 需求分析是项目开发的第一步,主要明确系统的功能需求和业务流程。办公自动化管理系统需具备以下...