现在的位置: 首页 > 综合 > 正文

J2EE笔记

2018年03月30日 ⁄ 综合 ⁄ 共 1335字 ⁄ 字号 评论关闭

 1、EL表达式

 

在一个输出变量的位置上

 

${person.name}

 

等价于

 

<%= person.getName() %>

 

若是在输入位置上则等价于

 

<%= person.setName() %>

 

如果没有为属性设置存取方法则会导致无法访问。

 

另:EL表达式分为JSTL EL和JSF EL,前者以$开头,后者以#开头。

 

2、JSF

 

JSF默认使用faces-config.xml来配置页面的流程。

 

jsp中的语句:

 

 

faces-config.xml中的相应代码段

 

 

<from-view-id>设置起点页面。

<navigation-case>设置跳转条件和目的:

<from-action>匹配发生跳转位置的代码的action属性值,必须是JSF EL表达式。

<from-outcome>匹配上述EL表达式的返回值。

<to-view-id>设置跳转目的页面。

 

注:如果直接将action属性设置为字符串的话可以直接作为outcome进行匹配,但是不能设置action匹配条件,会报错。

 

3. Servlet中使用JPA

 

凡是对数据库有修改的(增加、更新、删除)都必须设置一个UserTransaction类的实体,调用该实体的begin方法和commit方法来开始/结束对数据库的修改。对数据库的修改操作只能发生在这两次调用之间。

 

单纯的读取数据库不需要使用UserTransaction类。

 

使用EntityManagerFactory.createQuery方法修改数据库时,需要使用Query.executeUpdate方法使修改生效,例如:

 

 

以上查询使用的是JPA-QL,字符串中可以设置JPA-QL变量,不过也要相应地调用对应方法来给变量赋值:

 

 

后者可读性更强,但是应该比前者要低。

抱歉!评论已关闭.