一:hibernate配置
1.创建数据库:
create database ...
2.pojo: Product有id,name,price3个字段
3.Product.hbm.xml 映射Product类对应product_表
<
hibernate-mapping
package
=
"com.how2java.pojo"
>
<
class
name
=
"Product"
table
=
"product_"
>
<
id
name
=
"id"
column
=
"id"
>
<
generator
class
=
"native"
>
</
generator
>
</
id
>
<
property
name
=
"name"
/>
<
property
name
=
"price"
/>
</
class
>
</
hibernate-mapping
>
4. hibernate.cfg.xml hibernate基本配置,指定数据库,账号,密码,方言等等
<
hibernate-configuration
>
<
session-factory
>
<!-- Database connection settings -->
<
property
name
=
"connection.driver_class"
>com.mysql.jdbc.Driver</
property
>
<
property
name
=
"connection.url"
>jdbc:
mysql://localhost:3306/how2java?characterEncoding=GBK
</
property
>
<
property
name
=
"connection.username"
>root</
property
>
<
property
name
=
"connection.password"
>admin</
property
>
<!-- SQL dialect -->
<
property
name
=
"dialect"
>org.hibernate.dialect.MySQLDialect</
property
>
<
property
name
=
"current_session_context_class"
>thread</
property
>
<
property
name
=
"show_sql"
>true</
property
>
<
property
name
=
"hbm2ddl.auto"
>update</
property
>
<
mapping
resource
=
"com/how2java/pojo/Product.hbm.xml"
/>
</
session-factory
>
</
hibernate-configuration
>
5. 为ProductDAO准备增,删,修改,查询,获取方法
二: struts部分做的工作比较多
1. web.xml
2. struts.xml
3. action
4. jsp
配置web.xml
配置struts专用过滤器
<
web-app
>
<
filter
>
<
filter-name
>struts2</
filter-name
>
<
filter-class
>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</
filter-class
>
</
filter
>
<
filter-mapping
>
<
filter-name
>struts2</
filter-name
>
<
dispatcher
>FORWARD</
dispatcher
>
<
dispatcher
>REQUEST</
dispatcher
>
<
url-pattern
>/*</
url-pattern
>
</
filter-mapping
>
</web-app>
Action
分别为增加,删除,修改,查询,获取准备对应的方法.
声明实例化ProductDAO pdao = new ProductDAO();以便于在每一个方法中调用
public
class
ProductAction {
ProductDAO pdao =
new
ProductDAO();
Product product;
List<Product> products;
public
List<Product> getProducts() {
return
products;
}
public
void
setProducts(List<Product> products) {
this
.products = products;
}
public
Product getProduct() {
return
product;
}
public
void
setProduct(Product product) {
this
.product = product;
}
public
String add() {
pdao.add(product);
return
"list"
;
}
public
String edit() {
product =pdao.get(product.getId());
return
"edit"
;
}
public
String delete() {
pdao.delete(product.getId());
return
"list"
;
}
public
String update() {
pdao.update(product);
return
"list"
;
}
public
String list() {
products = pdao.listProduct();
return
"listJsp"
;
}
}
struts.xml
分别为增加,删除,获取,修改,查询配置Action
为了便于理解,这里没有使用通配符,可以查看struts章节的通配符匹配简化配置
<
struts
>
<
constant
name
=
"struts.i18n.encoding"
value
=
"UTF-8"
></
constant
>
<
package
name
=
"basicstruts"
extends
=
"struts-default"
>
<
action
name
=
"addProduct"
class
=
"com.how2java.action.ProductAction"
method
=
"add"
>
<
result
name
=
"list"
type
=
"redirect"
>listProduct</
result
>
</
action
>
<
action
name
=
"deleteProduct"
class
=
"com.how2java.action.ProductAction"
method
=
"delete"
>
<
result
name
=
"list"
type
=
"redirect"
>listProduct</
result
>
</
action
>
<
action
name
=
"editProduct"
class
=
"com.how2java.action.ProductAction"
method
=
"edit"
>
<
result
name
=
"edit"
>/product/edit.jsp</
result
>
</
action
>
<
action
name
=
"updateProduct"
class
=
"com.how2java.action.ProductAction"
method
=
"update"
>
<
result
name
=
"list"
type
=
"redirect"
>listProduct</
result
>
</
action
>
<
action
name
=
"listProduct"
class
=
"com.how2java.action.ProductAction"
method
=
"list"
>
<
result
name
=
"listJsp"
>/product/list.jsp</
result
>
</
action
>
</
package
>
</
struts
>
list.jsp
在web目录下,新建一个product目录,接着在product目录下创建list.jsp文件
list.jsp同时提供增加和显示功能
以及删除和修改的超链
edit.jsp
在product目录下创建edit.jsp文件,用于编辑
在WebContent目录下创建一个index.jsp,用于跳转到查询product页面
<
jsp:forward
page
=
"listProduct"
/>