Tomcat 根目录\conf\context.xml文件为全局的上下文配置文件,对所有的Web应用有效。所以将要发布的信息配置在此问件中,再通过JNDI来查找信息
---我们可以在Tomcat中发布一条信息,修改context.xml
<Context>
<Environment type="java.lang.String" name="嘿嘿" value="hello"/>
</Context>
type:java类名的全称
name:变量名,相对于java:comp/env的路径
value:变量值
数据库连接池的配置:
(第一步:)
<Resource name="jdbc/news" auth="Container"
type="javax.sql.DataSource" maxActive="100"
maxIdle="30" maxWait="10000"
username="sa" password="123456"
url="jdbc:sqlserver://localhost:1433;DatabaseName=NewsManagerSystem"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
/>
<!---
name:指定resource 的JNDI 名字
auth:指定管理Resource 的Manager,他有两个可选值:Container和Application
Container表示由容器创建Resource,Application表示由Web应用创建和管理Resource
type指定由Resource所属的java全类名
maxActive:指定数据库连接池中处于活动状态的数据库连接的最大数目
maxIdel:指定数据库连接池中处于空闲状态的数据库连接的最大数目,0表示不受约束
maxWait:指定数据库连接池中处于空闲状态的最长时间,
-1表示无限制(以毫秒为单位),超出这 一时间会抛出异常
username:指定连接数据库的用户名
password:指定连接数据库的密码
driverClassName:指定连接数据库的JDBC 驱动程序
url:指定连接数据库的路径
->
(第二步:)
<web-app> -----在web.xml里配置
<resource-ref>
<res-ref-name> jdbc/news </res-ref-name>--资源的引用名称---可改
<res-type> javax.sql.DataSource </res-type> --资源类型
<res-auth>Container</res-auth>--指定管理所应用资源的Manager
</resource-ref>
</web-app>
(第三步:在Basedao中)
import javax.naming.*
// javax.naming.Context 提供了查找JNDI Resource的接口
//java:comp/env 为前缀
Context context=new InitialContext();
DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/news");
con=ds.getConnection();
---我们可以在Tomcat中发布一条信息,修改context.xml
<Context>
<Environment type="java.lang.String" name="嘿嘿" value="hello"/>
</Context>
type:java类名的全称
name:变量名,相对于java:comp/env的路径
value:变量值
数据库连接池的配置:
(第一步:)
<Resource name="jdbc/news" auth="Container"
type="javax.sql.DataSource" maxActive="100"
maxIdle="30" maxWait="10000"
username="sa" password="123456"
url="jdbc:sqlserver://localhost:1433;DatabaseName=NewsManagerSystem"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
/>
<!---
name:指定resource 的JNDI 名字
auth:指定管理Resource 的Manager,他有两个可选值:Container和Application
Container表示由容器创建Resource,Application表示由Web应用创建和管理Resource
type指定由Resource所属的java全类名
maxActive:指定数据库连接池中处于活动状态的数据库连接的最大数目
maxIdel:指定数据库连接池中处于空闲状态的数据库连接的最大数目,0表示不受约束
maxWait:指定数据库连接池中处于空闲状态的最长时间,
-1表示无限制(以毫秒为单位),超出这 一时间会抛出异常
username:指定连接数据库的用户名
password:指定连接数据库的密码
driverClassName:指定连接数据库的JDBC 驱动程序
url:指定连接数据库的路径
->
(第二步:)
<web-app> -----在web.xml里配置
<resource-ref>
<res-ref-name> jdbc/news </res-ref-name>--资源的引用名称---可改
<res-type> javax.sql.DataSource </res-type> --资源类型
<res-auth>Container</res-auth>--指定管理所应用资源的Manager
</resource-ref>
</web-app>
(第三步:在Basedao中)
import javax.naming.*
// javax.naming.Context 提供了查找JNDI Resource的接口
//java:comp/env 为前缀
Context context=new InitialContext();
DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/news");
con=ds.getConnection();
什么是连接池?
数据库连接是非常占用系统资源的,这一点在多用访问的应用程序中体现得尤为突出,对数据库连接的管理 会影响到整个应用程序的伸缩性和健壮性。数据库连接池这是针对这个问题提出来的。
数据库连接池负责分配、管理和释放 数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建一个,它会释放空闲时间超过最大空闲时间的数据库连接
数据库连接是非常占用系统资源的,这一点在多用访问的应用程序中体现得尤为突出,对数据库连接的管理 会影响到整个应用程序的伸缩性和健壮性。数据库连接池这是针对这个问题提出来的。
数据库连接池负责分配、管理和释放 数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建一个,它会释放空闲时间超过最大空闲时间的数据库连接
三层架构?
表示层:用于用户展示与交互
业务逻辑层:主要功能是提供对业务逻辑处理的封装
数据访问层:主要实现对数据的保存和读取操作