文章目录
一、JNDI简介
1、什么是JNDI
- Java Naming and Directory Interface,Java命名和目录接口
- 通过名称将资源与服务进行关联
2、JNDI的作用与优点
- 在应用与Java对象或资源之间建立松耦合的逻辑关联,监护应用对于资源的配置及维护工作
- 可以在更大范围、不同应用之间共享资源
3、JNDI的简单应用
示例:如何实现在Tomcat中发布一条信息共所有的Web应用程序使用?
实现步骤:
- 发布信息:修改Tomcat/conf/context.xml文件
- 获取资源:使用lookup()进行查找
二、连接池
1.为什么使用连接池
传统数据库连接方式的不足
- 需要经常与数据库建立连接,在访问结束后必须关闭连接释放资源
- 当并发访问数量较大时,执行速度受到极大影响
- 系统的安全性和稳定性相对较差
2、连接池技术原理
连接池中的连接
3、DataSource与连接池
javax.sql.DataSource接口的实现类
- 负责管理与数据哭的连接
- 以连接池的形式对数据库连接进行管理
1)获取DataSource实例
- Tomcat支持将DataSource实现发布为JNDI资源
- Web应用通过JNDI获得DataSource引用
4、访问数据源
使用连接池实现数据库连接
<Context>
<Resource name="jdbc/news" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="newsu"
password="123456" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/newsmanagersystem?
useUnicode=true&characterEncoding=utf-8" />
</Context>
添加数据库驱动文件
- 把数据库驱动jar文件,加入到Tomcat的lib中
配置应用程序的web.xml文件\
- 在web.xml中配置
<resource-ref>
5、小结
使用连接池实现数据库连接
三、分层
1、为什么需要分层
JSP开发时分两层的弊端
2、三层模式
三层模式的划分
层与层之间的关系
3、分层原则
上层依赖其下层,依赖关系不跨层
- 表示层不能直接访问数据访问层
- 上层调用下层的结果,取决于下层的实现
下一层不能调用上一层
下一层不依赖上一层
- 上层的改变不会影响下一层
- 下层的改变会影响上一层得到的结果
在上一层中不能出现下一层的概念
- 分工明确,各司其职
4、分层开发的优势
- 职责清晰
- 无损替换
- 复用代码
- 降低了依赖程度
- 利于代码重用