ExtJS+DWR+Spring+Hibernate开发HRMS(2)

本文介绍了一种结合ExtJS和DWR实现RIA应用的方法,包括开发环境搭建、数据库设计和核心配置文件设置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

怎么样,看到这么绚丽的效果之后,大家心痒了吧!这些都是extjs产生的效果,RIA(富客户端应用)是今后的潮流和趋势,建议大家多了解下客户端的技术,特别是些优秀的JS组件。好咧,工欲善其事,必先利其器。我们先来准备开发环境:

各种开源框架环境及下载:

ExtJS2.X http://extjs.com/

DWR2.X http://directwebremoting.org/dwr/download

JSONJSON可以到http://www.json.org/查看详细内容,这里使用json-lib http://json-lib.sourceforge.net/

Spring2.x http://springframework.org/

Hibernate3.x http://www.hibernate.org/ 需要hibernate core annotations 包。

我们采用的开发工具是Eclipse3.4(MyEclipse7.0)+SqlServer 2000。准备就绪,现在就开始吧!

先执行数据库脚本,完成数据库的设计:

CREATE DATABASE hrproject

go

USE hrproject;

go

CREATE TABLE person (

id int NOT NULL identity(1,1),

name varchar(200) default NULL,

age varchar(20) default '0',

unitName varchar(200) default NULL,

address varchar(200) default NULL,

telephone varchar(20) default NULL,

gender varchar(20) default NULL,

PRIMARY KEY (id)

)

go

CREATE TABLE unit (

id int NOT NULL identity(1,1),

name varchar(200) NOT NULL,

description varchar(200) default NULL,

parentId int default NULL,

PRIMARY KEY (id)

)

go

CREATE TABLE userInfo (

id int NOT NULL identity(1,1),

userName varchar(200) default NULL,

passWord varchar(200) default NULL,

isValid int default NULL,

PRIMARY KEY (id)

)

INSERT INTO person (name, age, unitName, address, telephone, gender) VALUES

('许亮','30','交通部','武汉市武昌区华中电脑数码城','13234534431','')

INSERT INTO person (name, age, unitName, address, telephone, gender) VALUES

('张飞','41','交通部','武汉市武昌区华中电脑数码城','13321136431','')

INSERT INTO person (name, age, unitName, address, telephone, gender) VALUES

('关羽','53','税务部','武汉市武昌区华中电脑数码城','13831115753','')

INSERT INTO person (name, age, unitName, address, telephone, gender) VALUES

('貂蝉','32','人事部','武汉市武昌区华中电脑数码城','13631115753','')

COMMIT;

INSERT INTO unit ( name, description, parentId) VALUES

('交通部','管交通的',0)

INSERT INTO unit ( name, description, parentId) VALUES

('税务部','管税务的',1)

INSERT INTO unit ( name, description, parentId) VALUES

('人事部','管人的',1);

COMMIT;

INSERT INTO userInfo (userName, passWord, isValid) VALUES

('leno','123',1);

COMMIT;

select * from person

好了,在sqlserver 2000的查询分析器里面执行成功后,数据库的设计就告一段落。我们再来看看WEB应用程序的核心配置文件:web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<welcome-file-list>

<welcome-file>logon.jsp</welcome-file>

</welcome-file-list>

<listener>

<listener-class>

org.springframework.web.context.ContextLoaderListener

</listener-class>

</listener>

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>

/WEB-INF/classes/applicationContext.xml

</param-value>

</context-param>

<servlet>

<servlet-name>Dispatcher</servlet-name>

<servlet-class>

org.springframework.web.servlet.DispatcherServlet

</servlet-class>

<init-param>

<param-name>contextConfigLocation</param-name>

<param-value>

/WEB-INF/classes/applicationContext.xml

</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>Dispatcher</servlet-name>

<url-pattern>*.hr</url-pattern>

</servlet-mapping>

<servlet>

<servlet-name>dwr-invoker</servlet-name>

<servlet-class>

org.directwebremoting.servlet.DwrServlet

</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>true</param-value>

</init-param>

<init-param>

<param-name>classes</param-name>

<param-value>java.lang.Object</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>dwr-invoker</servlet-name>

<url-pattern>/dwr/*</url-pattern>

</servlet-mapping>

<filter>

<filter-name>encodingFilter</filter-name>

<filter-class>

org.springframework.web.filter.CharacterEncodingFilter

</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>UTF-8</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>encodingFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

</web-app>

我们在上面主要配置了Spring MVC的核心DispatcherServletDWR的服务器端核心DwrServlet,为我们后续使用做准备。(接着可以利用MyEclipse开发工具增加对hibernatespring框架的支持),你用Eclipse也没关系。下面是Hibernate框架的核心配置文件:

<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE hibernate-configuration PUBLIC

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>

<!-- configure datasource -->

<property name="connection.driver_class">

com.microsoft.jdbc.sqlserver.SQLServerDriver

</property>

<property name="connection.url">

jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hrproject;SelectMethod=cursor

</property>

<property name="connection.username">sa</property>

<property name="connection.password">123</property>

<property name="hibernate.connection.pool_size">20</property>

<property name="hibernate.c3p0.min_size">1</property>

<property name="hibernate.c3p0.max_size">20</property>

<property name="hibernate.c3p0.timeout">1800

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值