文档库 最新最全的文档下载
当前位置:文档库 › asp论文

asp论文

asp论文
asp论文

JAVA 项目开发实例

学院经济与管理学院

专业 10级信管专业(2)班

姓名黄振阳

学号 1006107031

1.首先开始搭建项目环境,步骤如下:

使用平台:MyEclipse 6.0

框架版本:Struts 1.2 Hibernate 3.0 Spring 2.0

1>添加过程:

<1> 新建项目。 Package Explorer视图下,右键单击 New -> Web Project;

第二步:(建立项目,包结构,导入所需jar文件)

新建一个web project:

建立包结构如下:

各包功能说明:

com.ssh.config : 配置文件(*.properties),如数据库配置信息com.ssh.resource : 资源文件

https://www.wendangku.net/doc/5c6024806.html,m : 公共工具(util)包

com.ssh.util.orm.hibernate : hibernate DAO 模板com.ssh.model : 各实体类文件

com.ssh.service : 业务逻辑包相当于biz

com.ssh..test : 测试包

com.ssh.action : struts Action

包结构可以根据自己需要自行划分

导入jar文件:

新建一个User Library: sshJars

添加jar文件:

将新建的User Library: sshJars加入到项目中:

第三步:撰写资源文件

jdbc.properties

在jdbc.properties 里写上连接数据库的配置信息,此文件的配置信息用于在spring的配置文件中使用,数据库的配置信息也可以写到Spring 的配置文件中,这在一个jdbc.properties文件中是为了方便更改.

在com.ssh.resource包中新建下列文件:

各文件详细内容及说明如下:

----------------------------------------------------------------------------------------------------------------------------------------- applicationContext.xml:

xmlns:xsi="https://www.wendangku.net/doc/5c6024806.html,/2001/XMLSchema-instance"

xmlns:jee="https://www.wendangku.net/doc/5c6024806.html,/schema/jee"

xmlns:tx="https://www.wendangku.net/doc/5c6024806.html,/schema/tx"

xmlns:context="https://www.wendangku.net/doc/5c6024806.html,/schema/context"

xsi:schemaLocation="https://www.wendangku.net/doc/5c6024806.html,/schema/beans

https://www.wendangku.net/doc/5c6024806.html,/schema/beans/spring-beans-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/tx

https://www.wendangku.net/doc/5c6024806.html,/schema/tx/spring-tx-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/jee

https://www.wendangku.net/doc/5c6024806.html,/schema/jee/spring-jee-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/context

https://www.wendangku.net/doc/5c6024806.html,/schema/context/spring-context-2.5.xsd"

default-lazy-init="true">

Spring公共配置文件

class="org.springframework.beans.factory.config.PropertyPlaceholderConfigure r">

classpath*:com/ssh/config/jdbc.properties

class="org.springframework.jdbc.datasource.DriverManagerDataSource">

class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactor yBean">

class=”org.springframework.orm.hibernate3.LocalSessionFactoryBean”-->

key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect

true

true

key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider

key="hibernate.cache.provider_configuration_file_resource_path">/ehcache-hib ernate.xml

https://www.wendangku.net/doc/5c6024806.html,er

是.xml 配置同则应设置具体配置文件名(*.hbm.xml)-->

class="org.springframework.orm.hibernate3.HibernateTransactionManager">

class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPo stProcessor" />

----------------------------------------------------------------------------------------------------------------------------------------- applicationContext-security.xml:

xmlns:beans="https://www.wendangku.net/doc/5c6024806.html,/schema/beans"

xmlns:xsi="https://www.wendangku.net/doc/5c6024806.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.wendangku.net/doc/5c6024806.html,/schema/beans

https://www.wendangku.net/doc/5c6024806.html,/schema/beans/spring-beans-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/security

https://www.wendangku.net/doc/5c6024806.html,/schema/security/spring-security-2.0.xsd"

default-autowire="byType" default-lazy-init="true">

此文件用于AOP的安全验证,也可不添加

----------------------------------------------------------------------------------------------------------------------------------------- applicationContext-service.xml

xmlns:xsi="https://www.wendangku.net/doc/5c6024806.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.wendangku.net/doc/5c6024806.html,/schema/beans

https://www.wendangku.net/doc/5c6024806.html,/schema/beans/spring-beans-2.5.xsd"

default-autowire="byType" default-lazy-init="true">

Service(业务逻辑类)的注入

----------------------------------------------------------------------------------------------------------------------------------------- ehcache-hibernate.xml:

overflowToDisk="true" />

Hibernate缓存的配置(可以不做配置,如果需要才使用缓存才做配置,建议配置上)

----------------------------------------------------------------------------------------------------------------------------------------- 第四步:在https://www.wendangku.net/doc/5c6024806.html,m 包下添加下列文件

此包为hibernate DAO模板中用到的各种工具类,各文件可以在打包的ssh_test项目中找到.

第五步:添加hibernate DAO 模板

此包为hibernate DAO模板,SimpleHibernateTemplate.java 中包含了对各实体(增,删,改,查,分页查等)的泛形方法。各文件可以在打包的ssh_test项目中找到.。

第六步:以上的工作还不够,我们还需要进行WEB方面的配置

配置web.xml , struts-config.xml , action-servlet.xml

各文件内容如下:

-----------------------------------------------------------------------------------------------------------------------------------------

xmlns="https://www.wendangku.net/doc/5c6024806.html,/xml/ns/javaee"

xmlns:web="https://www.wendangku.net/doc/5c6024806.html,/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="https://www.wendangku.net/doc/5c6024806.html,/xml/ns/javaee

https://www.wendangku.net/doc/5c6024806.html,/xml/ns/javaee/web-app_2_5.xsd"

id="WebApp_ID" version="2.5">

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

classpath:com/ssh/resource/applicationContext*.xml

action

org.apache.struts.action.ActionServlet

config

/WEB-INF/struts-config.xml

1

action

*.do

20

index.jsp

----------------------------------------------------------------------------------------------------------------------------------------- struts-config.xml:

"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"

"https://www.wendangku.net/doc/5c6024806.html,/struts/dtds/struts-config_1_2.dtd">

type="org.apache.struts.action.DynaActionForm">

type="https://www.wendangku.net/doc/5c6024806.html,ng.String">

name="loginForm">

value="org.springframework.web.struts.DelegatingRequestProcessor" />

className="org.springframework.web.struts.ContextLoaderPlugIn" />

----------------------------------------------------------------------------------------------------------------------------------------- action-servlet.xml: 注意:此文件struts 1.x 必须配置,而struts 2.x 不需要配置

xmlns:xsi="https://www.wendangku.net/doc/5c6024806.html,/2001/XMLSchema-instance"

xmlns:jee="https://www.wendangku.net/doc/5c6024806.html,/schema/jee"

xmlns:tx="https://www.wendangku.net/doc/5c6024806.html,/schema/tx"

xmlns:context="https://www.wendangku.net/doc/5c6024806.html,/schema/context"

xsi:schemaLocation="https://www.wendangku.net/doc/5c6024806.html,/schema/beans

https://www.wendangku.net/doc/5c6024806.html,/schema/beans/spring-beans-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/tx

https://www.wendangku.net/doc/5c6024806.html,/schema/tx/spring-tx-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/jee

https://www.wendangku.net/doc/5c6024806.html,/schema/jee/spring-jee-2.5.xsd

https://www.wendangku.net/doc/5c6024806.html,/schema/context

https://www.wendangku.net/doc/5c6024806.html,/schema/context/spring-context-2.5.xsd"

default-autowire="byName" default-lazy-init="true">

----------------------------------------------------------------------------------------------------------------------------------------- 至此,我们的Spring+Struts+Hibernate集成工作完成!

下面我们做测试:

com.ssh.model 包下建立User.java

package com.ssh.model;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

import javax.persistence.Table;

import javax.persistence.Entity;

@Entity

@Table(name = "user")

public class User {

private Integer id;

private String username;

private String password;

public User() {

super();

}

@Id

@GeneratedValue(strategy=GenerationType.IDENTITY) public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getUsername() {

return username;

}

public void setUsername(String username) {

https://www.wendangku.net/doc/5c6024806.html,ername = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

}

com.ssh.service 包下建立UserService.java

package com.ssh.service;

import java.util.List;

import https://www.wendangku.net/doc/5c6024806.html,er;

import com.ssh.util.orm.hibernate.Page;

import com.ssh.util.orm.hibernate.SimpleHibernateTemplate;

import org.hibernate.SessionFactory;

import org.springframework.beans.factory.annotation.Required; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils;

/*

*@author onlyflag

*/

@Transactional

public class UserService {

private SimpleHibernateTemplate userDao;

@Required

public void setSessionFactory(SessionFactory sessionFactory) {

userDao = new

SimpleHibernateTemplate(sessionFactory,User.class);

}

@Transactional(readOnly=true)

public User getUser(Long id)

{

return userDao.get(id);

}

@Transactional(readOnly=true)

public Page getAllUser(Page page)

{

return userDao.findAll(page);

}

@Transactional(readOnly=true)

public User getUserByLoginName(String loginName)

{

return userDao.findUniqueByProperty("loginName",loginName);

}

public void saveUser(User user)

{

userDao.save(user);

}

public void deleteUser(Long id)

{

User user = userDao.get(id);

userDao.delete(user);

}

public List findByProperty(String propertyName,String value)

{

return userDao.findByProperty(propertyName, value);

}

public User findUniqueByProperty(String propertyName,String value)

{

return userDao.findUniqueByProperty(propertyName, value);

}

@Transactional

public boolean isLoginNameUnique(String loginName,String orgLoginName) {

return userDao.isUnique("loginName",loginName, orgLoginName);

}

public SimpleHibernateTemplate getUserDao() {

return userDao;

}

}

有了:User 和UserService 我们就可写一个测试类来进行User 类的各种操作:

com.ssh.test 下建立Test.java

package com.ssh.test;

import https://www.wendangku.net/doc/5c6024806.html,er;

import https://www.wendangku.net/doc/5c6024806.html,erService;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

public static void main(String[] args){

ApplicationContext ctx=new ClassPathXmlApplicationContext("com.ssh /resource/applicationContext*.xml");

UserService us=(UserService) ctx.getBean("userService");

User user=new User();

user.setPassword("123");

user.setUsername("onlyflag");

us.saveUser(user);

}

}

实例说明:一个网站登录的例子,比较简单,但能说明各层是如何协调工作的。

工具:jdk1.5,eclipse3.2,myeclipse5.0GA,mysql5.0,tomcat5.5,至于这几个工具到底该怎么装这里我就不多说了,大家不清楚的可以到网上搜搜。下面是具体操作步骤:

预备工作:用mysql创建一个test数据库,再创建一个user表,再创建两个字段username和password。脚本如下

DROP DATABASE IF EXISTS `test`;

CREATE DATABASE `test`

USE `test`;

CREATE TABLE `user` (

`id` int(11) NOT NULL auto_increment,

`username` varchar(30) NOT NULL default '',

`password` varchar(30) default '',

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

打开myeclipse的database explore透视图

右键单击左侧的空白区域,点击new 按钮

单击“configure database driver”来配置数据库的驱动,你必须有mysql的jdbc驱动,没有的到mysql 的官方网站上下载。

测试数据库配置是否成功。

1.新建一个myeclipse的web工程

2.引入Spring包右键工程名

注意:这里为了省得以后再添加spring的相关包,所以一次性的选中了所有的包。选中

Copy选项,它会把这些包拷贝到/WebRoot/WEB-INF/lib目录下,方便以后的实际部署。

3.添加hibernate包

系统会检测到该工程已经添加了Spring包,选择使用Spring的配置文件

x

点击next

相关文档