日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

用myeclipse搭建S2SH struts2 spring hibernate

發布時間:2023/11/30 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用myeclipse搭建S2SH struts2 spring hibernate 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

step1: 在myeclipse上新建一個web項目

?

step2: 加入struts2所需的包

freemarker-2.3.16

ognl-3.0

struts2-core-2.2.1

struts2-dojo-plugin-2.2.1

struts2-json-plugin-2.2.1

struts2-spring-2.2.1

xwork-core-2.2.1?

?

step3:加入spring2.5

?右鍵點擊工程名稱,MyEclipse->Add Spring Capabilities。?

選擇Spring version為Spring 2.5,選中Spring 2.5 AOP Libraries、Spring 2.5 Core Libraries、Spring 2.5 Persistence Core Libraries、Spring 2.5 Persistence JDBC Libraries、Spring 2.5 Web Libraries共5個包。選中Copy checked Library contents to project folder (TLDs always copied),點擊Next。?

點擊Next,點擊Folder文本框后的Browse,在彈出對話框中選擇spring配置文件存儲位置為WebRoot/WEB-INF,點擊Finish。至此已經完成加載Spring,在WEB-INF文件夾下已經生成了配置文件applicationContext.xml。?

?

step4: 在data browser中新建一個connection

?

step5: hibernate

右鍵點擊工程名稱,MyEclipse->Add Hibernate Capabilities。?
選擇Hibernate Specification為Hibernate 3.2,選中所有包,選中Copy checked Library Jars to project folder and add to build-path,點擊Next。?
選擇Spring configuration file (applicationContext.xml),點擊Next。?
選擇Existing Spring configuration file,點擊Next?
只需在Bean Id文本框中輸入一個Id名,作為數據庫源的代用名,意義不大,采用默認設置即可。然后在DB Driver下拉列表中,選擇上一步在MyEclipse中創建好的數據庫源SQL Server 2005,其他信息將自動填寫,點擊Next。?
在彈出對話框中去掉Create SessionFactory class?復選框,不創建該類,點擊Finish完成。?

創建過程中,加載的jar包文件可能有重復,所以這個時候如果提示有某些jar包重復,選擇Keep Existing即可。?

?

?

6. Delete Conflictive Jars?
手動刪除三個重復的jar包(不能在build-path里面刪除,在build-path里面刪除無效):?
? asm-2.2.3.jar?
? cglib-2.1.3.jar?
? xerces-2.6.2.jar

?

7. Create struts.xml?
在src包下新建一個struts.xml文件,該文件內容如下:?

Struts.xml代碼<!DOCTYPE struts PUBLIC
??????? "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
??????? "
http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
?<constant name="struts.objectFactory" value="spring" />
?<include file="struts-default.xml"></include>
?<package name="default" extends="struts-default">
??<action name="userInfoLogin" class="userInfoAction" method="login">
???<result name="FAILURE">/MainWeb/failure.jsp </result>
???<result name="SUCCESS">/MainWeb/success.jsp</result>
??</action>
?</package>
</struts>
8.?配置web.xml?
配置web.xml文件,其內容如下:?
Web.xml代碼<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
?xmlns="
http://java.sun.com/xml/ns/javaee"
?xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
?xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee
?http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">?<context-param>
??<param-name>contextConfigLocation</param-name>
??<param-value>/WEB-INF/applicationContext.xml</param-value>
?</context-param>
?<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>
??<url-pattern>/*</url-pattern>
?</filter-mapping>
?<welcome-file-list>
??<welcome-file>index.jsp</welcome-file>
?</welcome-file-list>
?<listener>
??<listener-class>
?? ???org.springframework.web.context.ContextLoaderListener
??</listener-class>
?</listener>
</web-app>9. 使用Myeclipse反向生成dao層
將前面數據源dataSource所示數據庫SSH中的UserInfo表反向生成Hibernate實體類文件。?
UserInfo.java?
UserInfoDaoImpl.java?
UserInfo.hbm.xml?不要生成abstract class,然后一路點擊Next即可。?
在com.shawnqiu.bean下生成三個文件UserInfo.java、UserInfoDAO.java、UserInfo.hbm.xml。將UserInfoDAO.java 更名為UserInfoDaoImpl.java,置于com.shawnqiu.dao.impl,將UserInfo.hbm.xml置于dbConfig下。?

10. 創建UserInfoServiceImpl.java?Java代碼package com.shawnqiu.service.impl;import java.util.*;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.shawnqiu.bean.UserInfo;
public class UserInfoServiceImpl extends HibernateDaoSupport {
?//普通用戶登錄驗證
?@SuppressWarnings("unchecked")
?public boolean checkUser(String userName,String userPassword){
??? boolean flag = false;
??? String hql = "from UserInfo as userInfo where userInfo.userName = '"+userName+"' and userInfo.userPassword = '"+userPassword+"'";
??? List<UserInfo> userInfoList = this.getHibernateTemplate().find(hql);
??? if(userInfoList.size()>0){
???? flag = true;
??? }
??? return flag;
?}
}
11. 創建UserInfoService.java?
右鍵點擊UserInfoServiceImpl.java,選擇Refactor->Extract Interface。?
設置Interface name為UserInfoService,同時選擇Select All即可,點擊OK。?
如上圖所示,UserInfoService.java和UserInfoServiceImpl.java在同一package中。右鍵點擊UserInfoService.java,選擇Refactor->Move?
選擇com.shawnqiu.service,點擊OK即可。?

12. 創建UserInfoAction.java?
Java代碼package com.shawnqiu.action;import com.opensymphony.xwork2.ActionSupport;
import com.shawnqiu.service.UserInfoService;
public class UserInfoAction extends ActionSupport{?private String userName;
?private String userPassword;
?public UserInfoService getUserInfoService() {
??return userInfoService;
?}
?public void setUserInfoService(UserInfoService userInfoService) {
??this.userInfoService = userInfoService;
?}
?private UserInfoService userInfoService;
?public String getUserName() {
??? return userName;
?}
?public void setUserName(String userName) {
??? this.userName = userName;
?}
??public String getUserPassword() {
??? return userPassword;
?}
?public void setUserPassword(String userPassword) {
??? this.userPassword = userPassword;
?}
?public String execute(){
//??? String page = "FAILURE";
//??? boolean flag = false;
//??? flag = personManage.checkUser(userName, userPassword);
//??? if(flag){
//???? page = "SUCCESS";
//??? }
//??? return page;
??return "";?}?public String login(){
???? String page = "FAILURE";
???? boolean flag = false;
???? flag = userInfoService.checkUser(userName, userPassword);
???? if(flag){
????? page = "SUCCESS";
???? }
???? return page;
?}
}13. 創建Jsp Pages?
首先在WebRoot下新建一個MainWeb文件夾,并同時創建3個文件,分別是login.jsp、success.jsp、failure.jsp,源代碼如下。?
login.jsp?
Jsp代碼<%@ page language="java" pageEncoding="utf-8"%>
<
%@tagliburi="/struts-tags" prefix="s"%><html>
<head>
?? <title>用戶登錄</title>
</head>
<body>
<center>
?? <div id="login">
??? <s:form action="userInfoLogin">
???? <s:textfield label="用戶名" name="userName"></s:textfield>
???? <s:password label="密碼" name="userPassword"></s:password>
???? <s:submit value="登錄"></s:submit>
??? </s:form>
?? </div>
</center>
</body>
</html>
success.jsp?
Jsp代碼<%@ page language="java" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
? <head>
??? <title>Failure</title>
? </head>
? <body>
??? 登錄成功!<br>
? </body>
</html>

failure.jspJsp代碼<%@ page language="java" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
? <head>
??? <title>Failure</title>
? </head>
? <body>
??? 登錄失敗!<br>
? </body>
</html>

14. 配置applicationContext.xml?
Applicationcontext.xml代碼<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.microsoft.sqlserver.jdbc.SQLServerDriver">
</property>
<property name="url"
value="jdbc:sqlserver://localhost:1433;databaseName=SSH">
</property>
<property name="username" value="sa"></property>
<property name="password" value="Wxzy!@%&amp;"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>dbConfig/UserInfo.hbm.xml</value>

</list>
</property>
</bean>

<bean id="userInfoServiceImpl" class="com.shawnqiu.service.impl.UserInfoServiceImpl" abstract="false"
?? lazy-init="default" autowire="default" dependency-check="default" scope="prototype">
?? <property name="sessionFactory" >
??? <ref local="sessionFactory"/>
?? </property>
</bean>
<bean id="userInfoAction" class="com.shawnqiu.action.UserInfoAction" scope="prototype">
?????? <property name="userInfoService">
?????????? <ref bean="userInfoServiceImpl" />
?????? </property>
</bean>

</beans>

15. 創建log4j.properties?
Log4j.properties代碼# Set root category priority to INFO and its only appender to CONSOLE.
log4j.rootCategory=INFO, CONSOLE
#log4j.rootCategory=INFO, CONSOLE, LOGFILE
# Set the enterprise logger category to FATAL and its only appender to CONSOLE.
log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE
# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=INFO
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n
# LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=axis.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=INFO
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

轉載于:https://www.cnblogs.com/kevinge/archive/2011/05/20/2051886.html

總結

以上是生活随笔為你收集整理的用myeclipse搭建S2SH struts2 spring hibernate的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。