77范文网 - 专业文章范例文档资料分享平台

Eclipse+Struts2+Spring+MyBatis环境搭建(6)

来源:网络收集 时间:2019-03-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

新建好package

在Java Resources -》src下新建出如下package: ? com.jsdz.action --action ? com.jsdz.dao--数据库访问

? com.jsdz.exception--自定义异常 ? com.jsdz.interceptor--拦截器 ? com.jsdz.model--模型对象

? com.jsdz.service --业务接口

? com.jsdz.service.impl--业务接口实现 ? com.jsdz.test --测试目录 ? com.jsdz.util --工具类

? com.jsdz.xml--mybatis映射XML

在applicationContext.xml中添加组件注入选项

这里配置成spring中注解+自动扫描方式,相对XML文件配置简化得多。 @Repository:DAO层组件,@Service:业务层组件,@Controller:控制层组件

xmlns:jdbc=\

xmlns:context=\ xsi:schemaLocation=\

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/jdbc

http://www.springframework.org/schema/jdbc/spring-jdbc-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\>

通过这部分设置相应几类组件都自动装载注入,但依赖于代码上添加有注解。

将action的创建托管给spring容器

修改LoginAction.java代码,添加注解,使之能够被spring自动创建。

packagecom.jsdz.action;

importorg.springframework.context.annotation.Scope; importorg.springframework.stereotype.Controller; import com.opensymphony.xwork2.ActionSupport;

@Scope(\)

@Controller(\)

publicclassLoginActionextendsActionSupport {

private String username ;

private String password ;

@Override

public String execute() throws Exception {

System.out.println(\);

if(username.equals(\) &&password.equals(\) ) {

System.out.println(\);

returnSUCCESS; } else {

System.out.println(\); returnINPUT ; } }

public String getUsername() {

returnusername; } publicvoidsetUsername(String username) { this.username = username; } public String getPassword() { returnpassword; } publicvoidsetPassword(String password) { this.password = password; } }

修改struts.xml配置文件,使action的创建托管给spring。 /main.jsp /login.jsp 上面的class取值保持与@Controller(\括号中的值一致,默认是类名首字母小写。

到此可以做两种测试:

1) 去掉LoginAction.java中的注解,验证spring是否能创建对象实例;

2) 修改LoginAction.java中注解的命名,验证login.jsp是否能访问到对应的action

验证业务组件的自动注入

1. 创建业务组件接口以及两个实现类:LoginService、LoginServiceImpl,LoginServiceImpl2

在action中不再自己负责逻辑判断,提交给LoginService来处理业务。这里创建两个实现类主要是验证当有多个实现类时如何选择注入。

LoginService.java packagecom.jsdz.service; import … @Scope(\) @Service(\) publicinterfaceLoginService { booleanIsLogin(String userName,StringpassWord ) ; } 由于这个业务类中不包含任何成员变量,属于无状态类,因此可以定义创建为单实例。

LoginServiceImpl.java

packagecom.jsdz.service.impl;

import …

@Scope(\)

@Service(\)

publicclassLoginServiceImplimplementsLoginService {

@Override

publicbooleanIsLogin(String userName, String passWord) {

System.out.println(\);

if(userName.equals(\) &&passWord.equals(\)) returntrue;

returnfalse; } }

LoginServiceImpl2.java packagecom.jsdz.service.impl; import… @Scope(\) @Service(\) publicclass LoginServiceImpl2 implementsLoginService { @Override publicbooleanIsLogin(String userName, String passWord) { System.out.println(\); if(userName.equals(\) &&passWord.equals(\)) returntrue; returnfalse; } } 修改LoginAction.java

packagecom.jsdz.action; ….

@Scope(\)

@Controller(\)

publicclassLoginActionextendsActionSupport {

private String username ;

private String password ;

@Autowired

@Qualifier(\) privateLoginServiceloginService ;

@Override

public String execute() throws Exception {

System.out.println(\);

//if(username.equals(\ if(loginService.IsLogin(username, password)) {

System.out.println(\);

returnSUCCESS; } else {

System.out.println(\); returnINPUT ; }

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Eclipse+Struts2+Spring+MyBatis环境搭建(6)在线全文阅读。

Eclipse+Struts2+Spring+MyBatis环境搭建(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/528826.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: