墙头草的Java
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
posts - 241, comments - 116, trackbacks - 0
公告
<
2011年5月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(6)
给我留言
查看公开留言
查看私人留言
随笔分类
Apple苹果(14)
Eclipse(3)
PHP(1)
Spring(4)
业界资讯(19)
引流(2)
随笔档案
2013年8月 (1)
2013年2月 (5)
2012年12月 (5)
2012年8月 (3)
2012年7月 (1)
2012年6月 (1)
2012年2月 (5)
2012年1月 (11)
2011年12月 (4)
2011年11月 (5)
2011年10月 (17)
2011年9月 (12)
2011年8月 (14)
2011年7月 (18)
2011年6月 (31)
2011年5月 (18)
2011年4月 (13)
2011年2月 (1)
2010年11月 (9)
2010年10月 (3)
2010年3月 (16)
2010年1月 (5)
2009年12月 (1)
2009年8月 (2)
2009年6月 (2)
2009年5月 (4)
2009年4月 (2)
2009年3月 (2)
2009年2月 (1)
2008年12月 (23)
2008年11月 (3)
友情链接
人人游戏网
货运专家
软件开发网
运费
搜索
最新评论
1. re: springMVC后台的值无法通过ModelAndView的addObject传到前台的解决方法
5一日一日
--让他
2. 6666666
评论内容较长,点击标题查看
--555
3. 6666666
<%out.print("fdfdsfdfdfdfdfdf");%>
--555
4. re: JAVA中IP和整数相互转化
IP地址数值应该用long吧,int溢出了
--杨小芳
5. re: java静态工厂方法
热特瑞
--突然
阅读排行榜
1. java indexOf方法(111476)
2. Quartz的cron表达式(84536)
3. No result defined for action(66279)
4. Java NIO框架Mina、Netty、Grizzly介绍与对比(43692)
5. JAVA中 return的用法(31491)
评论排行榜
1. No result defined for action(8)
2. Quartz的cron表达式(6)
3. java indexOf方法(6)
4. JS禁用浏览器退格键(5)
5. 解决ActiveMQ中,Java与C++交互中文乱码问题(5)
集成spring3
复制jar到WEB-INF/lib目录:
复制,并添加到java build path:
Sql代码
org.springframework.aop-3.1.0.M1.jar
org.springframework.asm-3.1.0.M1.jar
org.springframework.beans-3.1.0.M1.jar
org.springframework.context-3.1.0.M1.jar
org.springframework.core-3.1.0.M1.jar
org.springframework.expression-3.1.0.M1.jar
org.springframework.web-3.1.0.M1.jar
spring包分类总结:
Sql代码
============================================
spring3 lib:
core:
org.springframework.beans-3.0.5.RELEASE.jar
org.springframework.core-3.0.5.RELEASE.jar
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.expression-3.0.5.RELEASE.jar
core depend lib:
org.springframework.asm-3.0.5.RELEASE.jar
web:
tld: spring.tld, spring-form.tld
org.springframework.web-3.0.5.RELEASE.jar
springMVC: org.springframework.web.servlet-3.0.5.RELEASE.jar
db:
org.springframework.orm-3.0.2.RELEASE.jar
org.springframework.
transaction-3.0.2.RELEASE.jar
org.springframework.jdbc-3.0.2.RELEASE.jar
aop:
org.springframework.aop-3.0.5.RELEASE.jar
depend
on:
aopalliance-1.0.jar
============================================
配置applicationContext.xml,并配置LoginAction的bean
普通bean配置,注意加上
scope="prototype"
注解方式配置:<context:component-scan base-package="org.skzr.demo"/>
applicationContext.xml:
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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"
>
<bean id="loginAction" class="org.skzr.demo.action.LoginAction" scope="prototype"/>
<context:component-scan base-package="org.skzr.demo"/>
</beans>
添加注解到LoginAction.java,注意:
@Component("loginActionComponent") @Scope("prototype")
Java代码
/**
* Copyright (c) 2010-2020 by wasion.com
* All rights reserved.
* @author <a href="mailto:skzr.org@gmail.com">skzr.org</a>
* @date 2011-5-19 下午10:20:57
*/
package org.skzr.demo.action;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import com.opensymphony.xwork2.ActionSupport;
/**
* 登录检测
* @author <a href="mailto:skzr.org@gmail.com">skzr.org</a>
* @version 1.0.0
* @since JDK1.6
*/
@Component("loginActionComponent")
@Scope("prototype")
public class LoginAction extends ActionSupport {
private static final long serialVersionUID = 1L;
/** 用户名 */
private String userName;
/** 密码 */
private String password;
/**
* @return {@link #userName}
*/
public String getUserName() {
return userName;
}
/**
* @param userName {@link #userName}
*/
public void setUserName(String userName) {
this.userName = userName;
}
/**
* @return {@link #password}
*/
public String getPassword() {
return password;
}
/**
* @param password {@link #password}
*/
public void setPassword(String password) {
this.password = password;
}
/**
* 登录验证
* @return 验证后页面视图
*/
public String check() {
return "admin".equals(userName) ? "welcome" : "success";
}
}
修改web.xml
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 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_3_0.xsd"
>
<description>我爱编程</description>
<display-name>我爱编程</display-name>
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>app.root</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>10000</param-value>
</context-param>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath*:applicationContext.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>struts-default.xml,struts-plugin.xml,struts.xml</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
启动web查看后台输出是不是正常初始化spring
修改struts.xml的action从spring中获取
Xml代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"
>
<struts>
<package name="demo" extends="struts-default" namespace="/">
<action name="loginAction" class="org.skzr.demo.action.LoginAction">
<result>/WEB-INF/jsp/login.jsp</result>
<result name="welcome">/WEB-INF/jsp/welcome.jsp</result>
</action>
<!-- 来自spring配置的bean -->
<action name="loginActionSpring" class="loginAction">
<result>/WEB-INF/jsp/login.jsp</result>
<result name="welcome">/WEB-INF/jsp/welcome.jsp</result>
</action>
<!-- 来自spring注解配置的bean -->
<action name="loginActionSpringComponent" class="loginActionComponent">
<result>/WEB-INF/jsp/login.jsp</result>
<result name="welcome">/WEB-INF/jsp/welcome.jsp</result>
</action>
</package>
</struts>
哈哈struts运行不正常了,无法使用spring的:
修改struts.properties添加spring支持:
struts.objectFactory=spring
复制struts2-spring-plugin-2.2.3.jar到lib,并添加到java build path
重新运行系统即可正常登录了。
新的登录页面login.jsp
Html代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String
path = request.getContextPath();
String
basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html>
<head>
<base href="<%=basePath%>">
<title>系统登录:</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<center><h1>struts action</h1></center>
<form action="loginAction!check.do" method="post">
<table align="center">
<tr><td>用户名:</td><td><input name="userName" value="${userName }"></td></tr>
<tr><td>密 码:</td><td><input name="password" type="password"></td></tr>
<tr><td><input type="submit" value="登录"></td><td><input type="reset" value="重置"></td></tr>
</table>
</form>
<center><h1>action配置在spring中的</h1></center>
<form action="loginActionSpring!check.do" method="post">
<table align="center">
<tr><td>用户名:</td><td><input name="userName" value="${userName }"></td></tr>
<tr><td>密 码:</td><td><input name="password" type="password"></td></tr>
<tr><td><input type="submit" value="登录"></td><td><input type="reset" value="重置"></td></tr>
</table>
</form>
<center><h1>action配置在spring中的(注解方式配置)</h1></center>
<form action="loginActionSpringComponent!check.do" method="post">
<table align="center">
<tr><td>用户名:</td><td><input name="userName" value="${userName }"></td></tr>
<tr><td>密 码:</td><td><input name="password" type="password"></td></tr>
<tr><td><input type="submit" value="登录"></td><td><input type="reset" value="重置"></td></tr>
</table>
</form>
</body>
</html>
posted on 2011-05-20 14:58
墙头草
阅读(821)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
人人游戏网
软件开发网
货运专家