ssh阶段 6java
NoSQL 2mysql
企业项目 nlinux
用于项目的构建、发布、测试、打包的项目管理工具
命令web
图形化界面面试
应用与开发工具中做为集成插件redis
eclipse、myeclipse、IDE(全家桶)spring
maven结构和web项目的结构sql
maven结构:apache
jar:通常用于补丁管理的文件状况下 pom:通常用于分布式项目搭建 pro-service pro-entity(VO) pro-utils pro-controller pro-pom---pom.xml war:通常用于搭建工程(第一次搭建),而且只会建立一次---应用服务器(支持自解压)
web结构设计模式
略
切忌:全部路径,不容许出现中文路径或者特殊字符
搭建环境工具:
myeclipse、mysql5+、sqlyog、jdk1.七、tomcat七、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配置步骤:
maven配置步骤: 1:将repository压缩包,解压到其它目录 2:修改maven的配置文件setting.xml 将<localRepository>D:/repo</localRepository>这标签去掉注释,改为本身的解压目录 3:配置到myeclipse中,步骤以下:
生成web.xml步骤:
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:定位文件(不经常使用)
注意:从今天开始,包括后续进入企业中,全部开发环境下的项目启动,都要用debug模式启动。 F5:进入方法内 F6:执行下一步 F7:跳出方法外 F8:执行到下一个断点
是从webwork发展而来,而且属于MVC的设计模式,其本质是一个servlet,充当的是C控制器层,和struts在名称上区别不大,可是在代码规范和内核上有很大的区别,其编码规范和内核流程遵循的是webwork2的流程习惯 属于非嵌入式框架,而且属于非单例模式
演变:
1:内部封装了大量的拦截器 2:支持多种表现层的组件 3:携带大量的类型转换器----- 日期-----2017-10-10(支持) 2018年10月10日 20181010
springMVC结构图:
struts2结构图:
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>
请求流程:
/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:页面取值方式:${参数名 }
请求流程:
/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>