1:环境的搭建
俗话说,磨刀不费砍柴工、一个好的IDE和一个好的环境是开发人员必须的,也是程序必要的。
环境:MyEclipse 8.0 +MySQL 5.0+jdk 1.6+tomcat6.0
2: 分析实例(bean)
这是Java永恒的主题,其实就是我们常说的对象了啊。分析出了这块就等于把逻辑上的问题解决了哈。不过这个要具体的系统具体分析。所以在此就不做片面的分析了哈。
3:导入所需要的包(这个自己在网上收哈)
4:配置web.xml(如下)(一个filter 和一个监听器(spring 用的))
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
5:配置bean(一定是在第二个步骤做好了后才可进行否则会浪费很多时间的)
bean 是很普通的javaBean 即:属性+属性对应的set和get方法、
这也是低注入的一种体现(如下)
package com.org.pdw.bean;
public class User {
private Integer id;
private String username;
private String password;
private int age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
6:开发完了bean后就应该建立这个bean的hibernate-mapping了、
<hibernate-mapping>
<class name="com.org.pdw.bean.User" table="user">
<id name="id" type="java.lang.Integer" column="id">
<generator class="increment"></generator>
</id>
<property name="username" type="string" column="username"></property>
<property name="password" type="string" column="password"></property>
<property name="age" type="java.lang.Integer" column="age"></property>
</class>
</hibernate-mapping>
这个文件注意命名就可以了哈。命名要以 bean名字.hbm.xml 来命名。
7:建立dao
dao的作用当然就是具体的操作DB的了啊。当然我们是面向接口的编程所以也要建立一个接口了啊。
习惯上接口的实现类的名字是接口名+Impl
import java.util.List;
import com.org.pdw.bean.User;
public interface UserDAO {
public void save(User user);
public void removeUser(User user);
public User findUserById(Integer id);
public List<User>findAllUsers();
public void updateUser(User user);
}
实现类
package com.org.pdw.dao.impl;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.org.pdw.bean.User;
import com.org.pdw.dao.UserDAO;
public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {
@SuppressWarnings("unchecked")
public List<User> findAllUsers() {
String hql="from User user order by user.id desc";
return (List<User>)this.getHibernateTemplate().find(hql);
}
public User findUserById(Integer id) {
User user=(User)this.getHibernateTemplate().get(User.class, id);
return user;
}
public void removeUser(User user) {
this.getHibernateTemplate().delete(user);
}
public void save(User user) {
this.getHibernateTemplate().save(user);
}
public void updateUser(User user)
{
this.getHibernateTemplate().update(user);
}
}
8:建立service层。这层与dao层相似。所以就不再列出了。读者如有不解可以看一下前面的dao的写法
9:struts的建立。struts是一个实现类了MVC的框架。struts2比较简单。
唯一需要注意的地方是 class这里已经不是正在的路径了。而是由spring来管理的了。所以在这里只需要配置一个代号
10:当然是spring的配置文件了约。这个配置文件有很多种写法。一下列出一种业界长期使用的
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/pdw"></property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
<property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/org/pdw/bean/User.hbm.xml</value>
</list>
</property>
</bean>
<bean id="userDao" class="com.org.pdw.dao.impl.UserDAOImpl" scope="singleton">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
<bean id="userService" class="com.org.pdw.UserServiceImpl.UserServiceImpl">
<property name="userDao" ref="userDao"></property>
</bean>
<bean id="saveUserAction" class="com.org.pdw.action.SaveUserAction" scope="prototype">
<property name="service" ref="userService"></property>
</bean>
<bean id="listUserAction" class="com.org.pdw.action.ListUserAction" scope="prototype">
<property name="service" ref="userService"></property>
</bean>
<bean id="deleteUserAction" class="com.org.pdw.action.DeleteUserAction" scope="prototype">
<property name="service" ref="userService"></property>
</bean>
<bean id="updatePUserAction" class="com.org.pdw.action.UpdatePUserAction" scope="prototype">
<property name="service" ref="userService"></property>
</bean>
<bean id="updateUserAction" class="com.org.pdw.action.UpdateUserAction" scope="prototype">
<property name="service" ref="userService"></property>
</bean>
<bean id="generateExcelAction" class="com.org.pdw.action.GenerateExcelAction" scope="singleton">
<property name="service" ref="userService"></property>
</bean>
</beans>
11:最后就是建立数据库了啊。数据库指明数据库和表字段就可以了。至于说中文的问题就要在配置数据库的时候指定为utf-8就没事了哈、
12:建立自己的视图(jsp)
13: 发布工程。启动tomcat
至此;系统开发完毕。