http://www.runoob.com/servlet/servlet-intro.html

https://www.cnblogs.com/xdp-gacl/tag/JavaWeb学习总结/default.html?

https://www.ibm.com/developerworks/cn/java/j-lo-servlet/

https://www.cnblogs.com/xdp-gacl/p/3908610.html

Servlet+JSP+JavaBean开发模式介绍

    Servlet+JSP+JavaBean架构其实可以认为就是我们所说的Web MVC模型,只是控制器采用Servlet、模型采用JavaBean、视图采用JSP,如图2-3

3.2、JavaBean作为模型的缺点

  此处模型使用JavaBean,JavaBean组件类既负责收集封装数据,又要进行业务逻辑处理,这样可能造成JavaBean组件类很庞大,所以一般现在项目都是采用三层架构,而不直接采用JavaBean

https://www.cnblogs.com/xdp-gacl/p/3902537.html

项目所需要的包
序号 包名 描述 所属层次
1 me.gacl.domain 存放系统的JavaBean类(只包含简单的属性以及属性对应的get和set方法,不包含具体的业务处理方法),提供给【数据访问层】、【业务处理层】、【Web层】来使用  domain(域模型)层
2 me.gacl.dao 存放访问数据库的操作接口类 数据访问层
3 me.gacl.dao.impl 存放访问数据库的操作接口的实现类
4 me.gacl.service 存放处理系统业务接口类 业务处理层
5 me.gacl.service.impl 存放处理系统业务接口的实现类
6 me.gacl.web.controller 存放作为系统控制器的Servlet Web层(表现层)
7 me.gacl.web.UI 存放为用户提供用户界面的servlet(UI指的是user interface)
8 me.gacl.web.filter 存放系统的用到的过滤器(Filter)
9 me.gacl.web.listener 存放系统的用到的监听器(Listener)
10 me.gacl.util 存放系统的通用工具类,提供给【数据访问层】、【业务处理层】、【Web层】来使用  
11 junit.test 存放系统的测试类  

  

一个良好的JavaWeb项目架构应该具有以上的11个包,这样显得层次分明,各个层之间的职责也很清晰明了,搭建JavaWeb项目架构时,就按照上面的1~11的序号顺序创建包:domain→dao→dao.impl→service→service.impl→web.controller→web.UI→web.filter→web.listener→util→junit.test,包的层次创建好了,项目的架构也就定下来了。

在src目录(类目录)下面,创建用于保存用户数据的xml文件(DB.xml)

  在WEB-INF目录下创建一个pages目录,pages目录存放系统的一些受保护(不允许用户直接通过URL地址访问)的jsp页面,用户要想访问这些受保护的jsp页面,那么只能通过me.gacl.web.UI这个包里面的Servlet

  创建好的项目如下图(图-1)所示:

  

https://www.cnblogs.com/xdp-gacl/p/4002804.html

2.1、数据库连接池的基本概念

  数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现的尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正式针对这个问题提出来的.数据库连接池负责分配,管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个。如下图所示:

  

https://www.cnblogs.com/xdp-gacl/p/4006830.html

https://www.cnblogs.com/xdp-gacl/p/4010328.html

JDK1. 5版本之后, JAVA提供了一种叫做Annotation的新数据类型,中文译为注解或标注,它的出现为铺天盖地的XML配置文件提供了一个完美的解决方案,让 JAVA EE开发更加方便快速,也更加干净了。

最新文章

  1. eclipse导入myeclipse的web项目没法识别问题解决
  2. 使用Shell创建GitHub仓库
  3. 配置samba服务一例
  4. linux 系统管理 使用技巧
  5. 1-1 Windows应用程序的特点
  6. 浅谈 Linux 内核开发之网络设备驱动
  7. Python 3.5.2建立与DB2的连接
  8. Repeater中使用倒计时
  9. Vagrant系列(二)----Vagrant的配置文件Vagrantfile详解
  10. git errot
  11. elk收集windows日志
  12. 传输层TCP
  13. sql注入--mysql
  14. 在delphi中我用DBGrid选择多条记录,如何一次把选择的多条记录删掉
  15. java hash表
  16. SpagoBI 教程 Lesson 2: OLAP with JPIVOT
  17. Ubuntu 16.04系统下安装Discuz出现“HTTP ERROR 500”目前无法处理此请求
  18. JavaScript 设计模式之代理模式
  19. A Basic Example of Threads Synchronization in Python, python中的线程同步示例
  20. jquery实现漂亮的轮播图

热门文章

  1. c# List< int>和List< string>互相转换
  2. [日常] Linux下的docker实践
  3. String 字符串相加比较
  4. RequestDispatcher.forward转发与HttpServletResponse.sendRedirect重定向
  5. js-ES6学习笔记-Symbol
  6. windows10 java环境变量设置
  7. OSGI企业应用开发(四)使用Blueprint整合Spring框架(一)
  8. 项目报错:Caused by: java.lang.ClassNotFoundException: Didn't find class "..."on path: DexPathList
  9. (转)在.net中检索HTTP请求
  10. 找回master库中被删除的系统表