JAVA ME

  • 格式:doc
  • 大小:50.50 KB
  • 文档页数:5

一、1.Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求。

2.从应用的角度,Struts有三大块,分别是Struts核心类、Struts配置文件及Struts标签库。

3.Hibernate是一个非常经典的开源的ORM框架。

4.Hibernate的工作流程很简单,最终目的是获得Session对象来对数据库进行增删改查操作。

5.在Hibernate的主键生成策略中assigned是由用户对id赋值。

6.Spring是所有开源框架的集大成者,为集成各种开源成果创造了一个非常理想的平台。

7.在Java的企业级应用开发中,使用Spring框架对大量的接口和工厂类进行管理。

8.使用Spring框架对大量的接口和工厂类进行管理。

9.Spring框架提供了一个强大的、可扩展的IoC容器来管理组件,这个容器是Spring框架的核心。

10.SessionFactory中保存了对应当前数据库配置的所有映射关系,同时也负责维护当前的二级数据缓存和Statement Pool。

11.资源文件的后缀名为properties12.属于Action接口中定义的字符串常量的是SUCCESS、NONE、ERROR、INPUT、LOGIN13.控制器需要在struts.xml配置文件中进行配置14.在Struts应用中,能共享数据的范围是request、session、application。

15.在Action类中一般需要添加相应属性的方法是setter和getter方法16.Struts2动作执行的结果类型是redirect、redirectAction、dispatcher17.不同的线程在调用Action时每个线程创建1个Action实例18.元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取save-update值19.以下关于SessionFactory的说法正确的是SessionFactory对象对应一个数据库存储源20.资源文件的后缀名为properties21.在Hibernate配置文件hibernate.cfg.xml设置复合主键使用的标签是composite-id22.Transaction接口主要是用于管理事务,它的commit()方法用于事务的提交三、1.Java 企业级框架核心技术:Struts、Hibernate和Spring框架。

2.Struts.xml是Struts 2框架的核心配置文件,主要用于配置和管理开发人员编写的action。

3.Struts2校验框架只提供服务器端校验,没提供客户端校验。

4.Struts2采用了低侵入式的设计,Struts2的Action类是一个普通的POJO(通常应该包含一个无参数的execute方法),从而带来很好的代码复用性。

5.OGNL使用“^”获得符合逻辑的最后一个元素。

6.在Hibernate框架中,SessionFactory负责创建Session实例,可以通过Configuration实例构建SessionFactory。

7.Hibernate数据关联时,在映射文件中使用<many-to-one>来标志映射多对一关系。

8.Session是Hibernate持久化操作的基础,提供了众多持久化方法,如save、update、delete。

9.要理解Hibernate的作用及特点,需要先理解数据持久化和对象关系映射。

10.Hibernate配置文件必须是hibernate.cfg.xml。

11.Hibernate层的作用就是把数据库映射成类,然后应用程序应用Hibernate提供的操作数据的接口来对数据库进行操作,取代了以前的JDBC,实现了面向对象的操作。

12.在Hibernate框架中,SessionFactory负责创建Session实例,可以通过Configuration实例构建SessionFactory。

13.AOP为面向切面编程,可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。

14.对象的生成由Spring框架通过反射机制完成,控制权从前端主程序转化到了框架,这种思想叫做控制反转(IoC)。

15.Spring中的代理机制不区分静态代理和动态代理,它抽象出一个泛类代理,不依赖任何被代理对象的代理实现,但该代理类需要实现InvocationHandler接口。

16.Spirng框架不具有Web功能,所以必须和Struts框架进行整合应用。

1.Struts 2的标签库根据用途不同可以分为哪五类,分别简单解释。

数据标签:主要用于输出值栈中的值,或者将变量、对象存入值栈。

控制标签:主要用于控制页面执行流程。

表单标签:主要用于生成HTML页面的表单元素。

非表单标签:主要用于生成页面上的树、Tab页等标签。

Ajax标签:主要用于支持Ajax效果。

2.简述Struts2的优点(1)在软件设计上Struts2的应用可以不依赖于Servlet API和struts API。

Struts2的这种设计属于无侵入式设计;(2)拦截器,实现如参数拦截注入等功能;(3)类型转换器,可以把特殊的请求参数转换成需要的类型;(4)多种表现层技术,如:JSP、freeMarker、Velocity等;(5)Struts2的输入校验可以对指定某个方法进行校验;(6)提供了全局范围、包范围和Action范围的国际化资源文件管理实现。

3.以MySQL为例编写Spring配置数据库驱动。

<property name="driverClassName" value="com.mysql.jdbc.Driver"></property><property name="url" value="jdbc:mysql://localhost:3306/test"></property><property name="username" value="root"></property><property name="password" value="1234"></property>4.在数据库中有一个学生表STUDENT (ID, NAME, SEX),在po包中有一个类Student,类中有与表中的字段对应的属性,并设计了各属性的setter和getter方法,使用Hibernate 框架技术进行应用开发需要为表设计映射文件。

请写出Student.hbm.xml映射文件,id 是主键。

<class name="po. Student" table=" STUDENT "><id name="id" column="ID"><generator class="assigned" /></id><property name="name" column="NAME"></property><property name="sex" column=" SEX"></property></class>5.动态代理是根据静态代理的机制,抽象出一个泛类代理。

根据动态代理知识编写代码设计动态代理类DynamicProxy。

public class DynamicProxy implements InvocationHandler{private Object obj;public Object bind(Object obj){this.obj=obj;return Proxy.newProxyInstance(obj.getClass().getClassLoader(), obj.getClass().getInterfaces(), this);}public Object invoke(Object proxy, Method method, Object[] objs) throws Throwable { Object result=null;try {validateUser();result=method.invoke(obj, objs);} catch (Exception e){}return result;}public void validateUser(){//略}}1.使用Struts与Hibernate框架整合技术实现学生管理系统的学生信息录入功能,使用Struts 标签库进行视图页面的设计,使用Validator框架进行相关页面验证,使用Hibernate框架技术完成Dao功能,通过Hibernate访问数据库。

package dao;import org.hibernate.Session;import org.hibernate.Transaction;import po.Student;public class StudentDao {public boolean insertStudent(Student stu) {Session session = util.HibernateSessionFactory.getSession();Transaction tran = null;try {tran = session.beginTransaction();session.save(stu);mit();return true;} catch (Exception e) {} finally {util.HibernateSessionFactory.closeSession();}return false;}public boolean updateStudent(Student stu) {Session session = util.HibernateSessionFactory.getSession();Transaction tran = null;try {tran = session.beginTransaction();session.update(stu);mit();return true;} catch (Exception e) {} finally {util.HibernateSessionFactory.closeSession();}return false;}public Student queryByAccount(String account) {Session session = util.HibernateSessionFactory.getSession();Student stu = null;try {stu = (Student) session.get(Student.class, account);} catch (Exception e) {} finally {util.HibernateSessionFactory.closeSession();}return stu;}}学生信息录入界面:Insert.jsp<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>学生信息录入</title> <s:head/></head><body><s:actionerror/><s:form action="insertPro" method="post"><s:textfield label="账号" name="stu.account"></s:textfield><s:password label="密码" name="stu.password"/><s:password label="确认密码" name="cpassword"/><s:textfield label="学生姓名" name=""></s:textfield><s:submit value="注册"></s:submit></s:form></body></html>2.使用Struts与Hibernate框架整合技术实现银行系统的新客户注册功能,使用Struts标签库进行视图页面的设计,使用Validator框架进行相关页面验证。