`
heimeiyingwang
  • 浏览: 94930 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Servlet资料辅导(3)

阅读更多

Servlet的资源访问

 

如果在Servlet中要使用到其他的资源,例如连接数据库的驱动,可以放在tomcat服务器的文件夹下的common/lib下,这个目录中存放的是一些在服务器启动时就会加载的公共资源,一般在需要在应用中是用特定的资源,也就是jar文件,那么不要放在common/lib下,如果common/lib下的jar文件过多会导致服务器启动缓慢,应用中使用到的jar文件要放在WEB-INF/lib下,就可以被服务器找到了。

 

如果要在Servlet中是用Hibernate的访问数据库的方法,那么就需要把hibernate需要的jar文件,放到WEB-INF/lib下就可以了,Xxxxxx.hbm.xml还是和实体类放在一起。hibernate.cgf.xml文件,要放在WEB-INF/classes下就可以了。

 

MVC框架

 

Model,模型层,这一层一般是进行数据库访问,并且封装对象,这一层中也存放在访问数据库取出信息封装成对象的类,也就是实体类的信息,可以使用JDBC或者Hibernate实现这一层的功能。

Ctrl,控制曾,用来相应请求和调用写好的相应的访问数据库的方法,这一层是用来控制请求的响应的,现在我们是使用Servlet来实现这一层,不过一般是会用开源的MVC框架来实现这层,例如struts,或者是Spring的MVC框架。

View,表现层,他只用来显示数据和收集必要数据,收集数据的一般是form表单,不过要保证数据的正确性要是用JavaScript验证信息,以后我们会学到的JSP(java server page)就是用来表现、显示数据的。

 

HttpServletRequest对象中的方法setAttribute(String name,Object o),可以使用HttpServletRequest对象来携带信息,并且可以通过getAttribute(String name)方法来获得携带的信息,这两个方法类似于map中的存取方法,setAttribute方法给数据加上标识,getAttribute方法则是通过这个标识来获取数据,可以使用这一对方法的前提就是要保证是同一个请求对象(HttpServletRequest)

 

Servlet的控制流转

 

ServletContext,Servlet上下文对象,在每个Servlet中都会有一个ServletContext的引用,这个ServletContext是一个全局的对象,每个应用中只有一个ServletContext对象。

HttpServlet中的getServletContext()方法,获得ServletContext对象。

ServletContext类的getRequestDispatcher(String path)方法获得一个RequestDispatcher对象,并且跳转到指定的Servlet,getRequestDispatcher(String path)方法中的参数就是path,就是指定跳转的Servlet的url-pattern。

RequestDispatcher类的forward(ServletRequest request, ServletResponse response) 方法,可以把请求对象转发给其他的Servlet。

数据库连接池,也就是在没有程序取连接时,可以事先创建好连接,连接池是一个运行在多线程环境下,提供数据库连接的程序,在程序是用万数据库连接后关闭数据库连接的动作不再是关闭连接的操作,而是把数据库连接放回连接池,也就是这个数据库连接已经是空闲状态,就可以供其他的程序取用了。

配置Tomcat服务器的数据源

在tomcat下的conf目录中的tomcat-users.xml文件中配置的是tomcat的用户
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager" description=""/>
  <role rolename="admin"/><!--配置管理员-->
  <user username="manager" password="123" fullName="" roles="manager"/>
  <user username="admin" password="123" roles="admin"/>
  <!--配置管理员的用户名和密码,并且标明是管理员roles="admin"-->
</tomcat-users>
   <Resource
      name="jdbc/oracle" 配置JDNI的名字
      type="javax.sql.DataSource" 绑定资源的类型
      password="open123"
      driverClassName="oracle.jdbc.driver.OracleDriver" 驱动名
      maxIdle="1"最大连接数
      maxWait="-1"等待时间,配置为-1就是无限等待,只到有空闲连接为止
      username="openlab"
      url="jdbc:oracle:thin:@192.168.0.39:1521:TARENADB"
      maxActive="3" 最大活动连接数/>

以下的就是从连接池去取数据库连接的代码

public static Connection getConnection(String JNDIName)
 {
  Connection conn = null;
  try
  {
   Context initCtx = new InitialContext();
   Context envCtx = (Context) initCtx.lookup("java:comp/env");
   //这个是在tomcat下默认绑定Context的JNDIname
   DataSource ds = (DataSource) envCtx.lookup(JNDIName);
   conn = ds.getConnection();
  } catch (NamingException ne)
  {
   ne.printStackTrace();
  } catch (SQLException se)
  {
   se.printStackTrace();
  }
  return conn;
 }

 

Java EE编程分层


表现层,业务层,数据层。
表现层,也就算用来显示数据,接受数据的。JSP,Servlet
业务层,是处理核心业务的程序 EJB,JDBC(Hibernate)
数据层,也就是数据库,用来存放数据。Oracle,SQLServer

分享到:
评论

相关推荐

    利用servlet技术实现一个简单的聊天室

    2. 在实验完成时需要向辅导教师报告,以记录实验成绩,实验成绩以百分制记录;实验不得抄袭,否则不记成绩。 提示: 1. 需要实现一个静态登录页面及一个servlet 2. 对于聊天信息的保存可能用到servletcontext 3. ...

    学生信息管理系统(JSP+Servlet)

    3. **控制器(Controller)**:处理用户请求,协调模型和视图,这部分功能可以通过Servlet或JSP的内置动作标签来实现。 在实际开发中,以下是一些关键知识点: 1. **JSP指令和动作标签**:如`&lt;jsp:include&gt;`用于动态...

    基于 jsp+servlet+jdbc 学生请假信息管理系统课程设计

    (3)辅导员 审核请假单、导出学生晚归记录、查看个人信息、查看所有学生的晚归记录、基础信息的管理(学生、班级信息、班级课程) 5.登录的用户名密码 学生 用户名: 1 密码: 1 辅导员 用户名: 2 密码: 2 宿...

    利用servlet实现一个简单的聊天室

    1. 利用servlet技术实现一个简单的聊天室,实现多人同时交流。当发送聊天信息时,信息窗口刷新。信息窗口显示发言人的姓名以及发言的内容。在进入聊天室之前需要进行登录,即输入用户名。 2. 在实验完成时需要向辅导...

    4.3javaEE_原生Servlet_SqlServer医院管理住院系统的研究与实现.zip

    - **项目辅导视频、论文等资料**:可能包含项目开发过程的教程、设计文档、相关论文等,帮助理解和学习项目。 - **数据库**:包含数据库脚本或已有的数据库文件,用于恢复和操作系统的数据环境。 - **源代码**:...

    jsp+servlet请假系统

    6. **权限控制**:根据用户角色(学生、班主任、辅导员、教务主任等)设定不同权限,防止越权操作。 综上所述,"JSP+Servlet学生请假系统"是一个典型的Web应用示例,涉及Web开发的基础技术、数据库操作、MVC设计...

    4.6javaEE_原生Servlet_MySql酒店管理系统的设计与实现.zip

    《基于JavaEE、原生Servlet和MySQL的酒店管理系统设计与...项目的"项目辅导视频"和"论文等资料"可以进一步深入学习各个模块的具体实现细节,而"源代码"则可供开发者参考和学习,"项目截图"展示了系统的实际运行效果。

    辅导答疑管理系统

    3. **数据库管理**:系统可能使用了如MySQL、Oracle或PostgreSQL等关系型数据库来存储学生信息、答疑记录等数据。数据库设计包括表结构、数据关系和索引优化,确保数据的安全性和高效检索。 4. **Servlet和JSP**:...

    2009年Java认证辅导资料

    Java认证是全球认可的Java程序员技能评估标准,2009年的Java认证辅导资料涵盖了当时最新的Java技术,旨在帮助考生顺利通过考试并提升其Java编程能力。这些资料可能包括了Oracle Certified Associate (OCA), Oracle ...

    基于JSP+Servlet+ Mysql的宿舍管理系统.zip

    4. 权限管理:设置不同角色(如管理员、辅导员等)的权限,确保数据安全。 5. 报表统计:生成各类统计报表,如空余床位、住宿率等。 【开发工具与环境】 开发过程中,可能使用了Eclipse或IntelliJ IDEA作为集成开发...

    基于javaEE+原生Servlet+MySql的村镇旅游网站设计与实现(源码+文档)-JAVAEE-Servlet-旅游网站

    资源名字:基于javaEE+原生Servlet+MySql的村镇旅游网站设计与实现(源码+文档)_JAVAEE_Servlet_旅游网站 资源类型:项目全套源码+文档+辅导视频 源码说明: 全部项目源码都是经过测试校正后百分百成功运行。 适合...

    5.0javaEE_原生Servlet_MySql塞北村镇旅游网站设计.zip

    - **项目辅导视频**:这部分资源可能包含教程或讲解视频,帮助学习者理解项目的实现过程和关键概念。 - **论文等资料**:可能包含项目的设计理念、技术选型的分析报告等。 - **数据库**:包含了项目所需的表结构...

    javaWeb基础技术辅导

    #### Servlet辅导 Servlet是一种Java技术,用于扩展服务器的功能,特别是处理HTTP请求和响应。它相当于服务器端的小应用程序,可以接收客户端发送的请求,执行相应的业务逻辑,并返回响应结果。Servlet生命周期包括...

    毕业设计,城市公交查询系统,内含毕业论文、毕业答辩PPT、数据库以及项目辅导视频,使用的技术有Servlet、JSP

    城市公交查询系统介绍 我国许多城市都有一些颇具设计感的公交站台,但我们却很难在这里找到我们出行需要的信息。...5.训练检索文献资料和利用文献资料的能力; 6.训练撰写技术文档与学位论文的能力。

    4.5javaEE_原生Servlet_MySql网络考试系统的设计与实现.zip

    项目辅导视频、论文等资料可以进一步指导开发过程,帮助理解和解决问题。数据库文件和源代码提供了具体实现细节,通过阅读和分析这些内容,可以深入学习到实际开发中的技巧和最佳实践。项目截图则能直观展示系统功能...

    基于JAVAWEB的辅导员考评管理系统.zip

    3. **数据库管理**:数据库是存储辅导员信息、考核标准、考评结果等数据的关键部分。系统可能使用MySQL、Oracle或SQL Server等关系型数据库,通过JDBC(Java Database Connectivity)接口进行数据操作。 4. **用户...

    javaEE_原生Servlet_MySql银行柜员业务绩效考核系统的设计与实现(源码+数据库sql+论文+视频齐全).zip

    3. **MySQL数据库**:MySQL是一款流行的开源关系型数据库管理系统,以其高效、稳定和易用而广泛应用于Web开发。在本系统中,MySQL用于存储柜员信息、业务数据以及绩效考核的各项指标。 4. **数据库设计**:系统中的...

Global site tag (gtag.js) - Google Analytics