阶段大纲 struts2 火推 01 02笔记

day01

 

阶段大纲

  • ssh阶段 6

    • struts2
    • hibernate
    • ssh
  • NoSQL 2

    • redis
    • mongoDB
    • linux------1-2
  • 企业项目 n

    • CRM客户管理系统
    • P2P金融借贷平台
    • 企业级的解决方案
    • 简历指导-模拟面试 1-2

10213915_OUbw.png

MAVEN

用于项目的构建、发布、测试、打包的项目管理工具
  • 命令

    • mvn test
    • mvn install
    • mvn clearn
    • mvn bulid
  • 图形化界面

    • 应用与开发工具中作为集成插件

      eclipse、myeclipse、IDE(全家桶)

maven结构和web项目的结构

maven结构:

jar:一般用于补丁管理的文件情况下
pom:一般用于分布式项目搭建
        pro-service
        pro-entity(VO)
        pro-utils
        pro-controller
        pro-pom---pom.xml

war:一般用于搭建工程(第一次搭建),并且只会创建一次---应用服务器(支持自解压)

10213936_0DJF.png

web结构

Tocmat

10213944_d2Qw.png

开发环境

切忌:所有路径,不允许出现中文路径或者特殊字符

搭建环境工具:

myeclipse、mysql5+、sqlyog、jdk1.7、tomcat7、maven

搭建步骤:

1:删除环境变量中的tomcat设置
2:解压缩各个软件
3:切换本地jdk为1.7
4:安装myeclipse
5:设置myeclipse中jdk的版本
6:将tomcat配置到myeclipse中
7:将repository压缩包,解压到其它目录
8:将maven中央仓库,配置到myeclipse中
9:安装sqlyog,并测试mysql连接

搭建图文说明:

jdk配置步骤:

tomcat配置步骤:

10214613_fzk9.gif

maven配置步骤:

    1:将repository压缩包,解压到其它目录
    2:修改maven的配置文件setting.xml
        将<localRepository>D:/repo</localRepository>这标签去掉注释,改成自己的解压目录
    3:配置到myeclipse中,步骤如下:

10214654_CmW4.gif

生成web.xml步骤: 10214820_ZrlM.gif

day02

开发工具快捷键

ctrl+N:新建
ctrl+1:提示错误信息
ctrl+D:删除
ctrl+/:行注释
ctrl+\:取消行注释
ctrl+shift+/:代码段注释
ctrl+shift+\:取消代码段注释
ctrl+H:快速查找任何文件信息、字符信息
ctrl+shift+O:导包
ctrl+T:查找类(支持模糊查找)
ctrl+R:查找文件(支持模糊查找、支持资源文件查找)
ctrl+shift+I:debug模式下,查看当前执行代码信息
ctrl+G:定位文件(不常用)

DUBUG模式开发

注意:从今天开始,包括后续进入企业中,所有开发环境下的项目启动,都要用debug模式启动。

F5:进入方法内
F6:执行下一步
F7:跳出方法外
F8:执行到下一个断点

Struts2

概述
是从webwork发展而来,并且属于MVC的设计模式,其本质是一个servlet,充当的是C控制器层,和struts在名称上区别不大,但是在代码规范和内核上有很大的区别,其编码规范和内核流程遵循的是webwork2的流程习惯

属于非嵌入式框架,并且属于非单例模式

演变:

10215139_3RsF.png

优势
1:内部封装了大量的拦截器
2:支持多种表现层的组件
3:携带大量的类型转换器-----
    日期-----2017-10-10(支持)   2018年10月10日  20181010
结构原理

springMVC结构图:

10215140_q1z8.png

struts2结构图:

10215142_uSYS.png

搭建步骤
Spring搭建步骤:

    1:导包--(core\aop\ioc\jdbc.....、webMVC)
    2:增加配置文件信息applicationcontext.xml
    3:配置启动容器

Struts2搭建步骤

    1:导包(struts2-core)

        <dependency>
          <groupId>org.apache.struts</groupId>
          <artifactId>struts2-core</artifactId>
          <version>2.5.13</version>
        </dependency>

    2:增加配置文件信息(struts.xml)

        <?xml version="1.0" encoding="UTF-8" ?>
        <!DOCTYPE struts PUBLIC
            "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
            "http://struts.apache.org/dtds/struts-2.5.dtd">

        <struts>

        </struts>

    3:配置启动容器

        <!-- struts2配置filter控制器 -->
        <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>*.action</url-pattern>
        </filter-mapping>
struts.xml不提示标签问题
入门示例1 - Hello Struts2

请求流程:

/hello.action-->StrutsPrepareAndExecuteFilter控制器->HelloAction--->result(struts.xml)--->hello.jsp

开发步骤:

1:遍写hello.jsp文件
2:添加struts.xml中配置信息
3:编写HelloAction.java文件
4:将工程部署到应用服务器Tomcat中
5:启动运行
6:浏览器访问:http://localhost:8081/ssh_13/demo/hello.action

代码:

HelloAction.java:

/**
 * 1:接收请求(url或者带有参数url)
 * 2:处理请求的方法
 *          public String execute(){.......}
 *              其中execute对应的是struts.xml中action中的method值
 * 3:返回请求结果集XXXX
 * 
 *          struts.xml----<result name="XXXX" type="">/.....</result>
 * @author likang
 * @date   2018-1-8 上午11:22:56
 */
public class HelloAction {

     public String execute(){
         return "success";
     }

}

struts.xml配置文件信息:

<!-- name:代表的是package名称,可以自定义,一般是按照系统的业务模块划分package
    extends:代表的是继承struts2的核心配置文件,struts-default并不是struts2的核心配置文件名
            而是struts-default.xml中的package对应的name值
    namespace:代表的是命名空间,如果不写namespace值,则默认是/
 -->
<package name="demo" extends="struts-default" namespace="/demo">
    <!--hello.action
            name:代表的是请求名,但是请求后缀无需填写
            class:代表的是请求所处理的action类
            method:接收接口请求的处理方法名,暂时写死:execute
      -->
    <action name="hello" class="com.xdl.action.HelloAction" method="execute">
        <!--execute返回的result值:
                name:代表的是execute返回的标志
                type:代表的是根据标志,处理结果响应的类型,默认的是dispatcher
          -->
        <result name="success" type="dispatcher">/WEB-INF/jsp/hello.jsp</result>
    </action>
</package>

hello.jsp:

<h1>Hello Struts2</h1>
命名空间、请求后缀、组件默认值

/demo/user/hello.action

请求名:hello 请求后缀:.action 命名空间:/demo/user

加载顺序问题:

http://localhost:8081/ssh_13/demo/dd/ddd/dd/hello.action

1:匹配请求后缀
2:匹配请求名:hello
3:匹配namespace,是一级一级匹配

请求后缀修改:

1:将web.xml中的url修改为/*.如下:
    <url-pattern>/*</url-pattern>
2:在struts.xml中增加如下配置信息:

    <!-- 修改struts2的默认后缀请求方式,struts.action.extension属性来源于struts2的属性文件
    default.properties
    如果是多个请求后缀,则用逗号隔开 -->
    <constant name="struts.action.extension" value="do"/>
接收、传出参数
1:struts2中使用的全局变量来接收和传出参数
2:为参数增加getter和setter方法
3:变量名和请求参数名,名称必须保持一致
4:页面取值方式:${参数名 }
入门示例2 - 列表展示

请求流程:

/demo/list.do-->filter控制器--->ListAction-->result(struts.xml)->list.jsp

开发步骤:

1:编写list.jsp页面---${}
        C标签
        导包:jstl
    <dependency>
        <groupId>jstl</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

2:编写ListAction.java

代码如下:

ListAction.java:

/**
 * 列表展示
 * @author likang
 * @date   2018-1-8 下午2:43:23
 */
public class ListAction {

    public List<Dept> listDept;

    public String execute(){
        listDept = new ArrayList<Dept>();
        for (int i = 0; i < 10; i++) {
            Dept dept = new Dept();
            dept.setId(Long.valueOf(i));
            dept.setDeptName("java13_"+i);
            dept.setDeptNote("BeiJing"+i);
            listDept.add(dept);
        }
        return "success";
    }

    public List<Dept> getListDept() {
        return listDept;
    }

    public void setListDept(List<Dept> listDept) {
        this.listDept = listDept;
    }
}

struts.xml:

<!-- 列表页面的跳转 -->
    <action name="list" class="com.xdl.action.ListAction" method="execute">
        <result name="success" type="dispatcher">/WEB-INF/jsp/list.jsp</result>
    </action>

list.jsp

1:引用c标签
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
2:遍历取值

    <h1>列表展示</h1>
    <table>
        <c:forEach items="${listDept }" var="dept">
            <tr>
                <td>${dept.id }</td>
                <td>${dept.deptName }</td>
                <td>${dept.deptNote }</td>      
            </tr>
        </c:forEach>
    </table>

Struts2+Spring整合

转载于:https://my.oschina.net/u/3680357/blog/1604104

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值