发表于: 2017-10-07 23:35:15
2 788
今天完成任务:
任务二总结:
任务二简述
1. 参考接口定义格式示例,定义Rest接口格式。
任务二刚刚开始需要我们学习rest的概念,然后了解一下restful风格.
其实RESTful风格就是符合REST概念的uri就称为RESTful风格,好处是结构清晰,简单明了.比如:我自己的项目localhost:8080/search/3 就是去查询id是3的一条数据.
2.创建Maven WEB 工程。
这个很简单就是创建maven项目的时候选择到webapp的框架就行.然后其中会自动生成webapp的文件夹,并且包含一些web项目需要的文件如下
3.使用SpringMVC完成REST接口。
这一步是需要写代码的,需要了解的知识比较多,比如注解的使用,然后springmvc的工作流程,等.下面详细说.
4.使用Task1中的Service完成接口的实现。
这里是需要将自己写的项目进行分层,有model,DAO,Service,Action不同的分层,层次看起来也很清晰.容易理解,这里需要了解到三层架构是怎么实现的,每一层的作用是什么.
5.使用jetty:run命令 启动Jetty服务。
jetty也是一个web容器,和tomcat相似,但是优势在于轻量级,速度较快.
在maven中可以使用插件来添加jetty,配置如下:
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.3.7.v20160115</version>
</plugin>
添加完成后就可以看到插件添加到了maven中
或者可以自己下载jetty然后再添加到maven中
6.使用PostMan/dhc测试自己写的接口,确认接口可以正常使用。
学习使用postman来测试自己的代码是不是能正常运行,测试的方法是postman会模拟http的请求,对代码中的接口进行测试功能。学会用postman,可以使用chrome浏览器添加应用的方法使用,也可以自己下载postman的软件来使用。
SSM框架的理解:
ssm框架建立在Spring,SpringMVC,Mybatis之上,所以这三个东西都要知道在去做,欲速则不达。
首先说一下自己理解的ssm运行的流程。
分层首先是model(实体类),DAO层,Service层,界面,Controller.
实体类就是对数据表对应的字段进行get,set方法,以便被调用。
DAO层就是和数据库进行交互,对数据进行增删改查的操作,主要有一个DAO接口,和一个Mapper映射文件,作为写入sql语句实现接口的方法,这里用到了Mybatis的知识。DAO层连接了model和Service层
Service层,叫做业务逻辑层,主要用来实现复杂的业务逻辑。包含一个service接口和一个接口的实现类。由于SSM框架最简单的形式就是进行增删改查,所以和DAO层有点类似,但是还是分开写,这样看起来也清晰。
界面,这里主要是jsp文件,用来显示到网页上。
Controller是对各层进行控制的一层,主要是用来调用Service的接口来实现增删改,接收网页传来的数据,并且将获取的数据返回到jsp中。
每一层说完了以后就是从上到下进行调用,在jsp中有请求的时候,会到Controller中去找需要的各种方法,然后按照特定的方法来进行调用Service的接口,Service再去调用DAO层的接口,最后在Mapper中对数据进行操作。调用的结果在从Controller中返回到jsp界面中。
然后解释一下配置文件中重要的部分
首先是web.xml,这里面主要包括了控制Spring和Springmvc配置文件的路径,servlet的设置。
配置Spring.xml文件。
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext.xml</param-value>
<!--配置application.xml的位置,否则会在webapp下面找-->
</context-param>
配置SpringMVC.xml文件
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springMVC.xml</param-value>
</init-param>
servlet:
主要是用来配置前端控制器dispatcher-servlet和设置拦截类型。
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
第二个是Springmvc的配置文件,这里面主要写了
自动扫描,这个路径下带有注解的文件并且注入到Spring容器中。
<context:component-scan base-package="comNaNteng.controller">
MVC的注解驱动,相当于自动注入了HandlerMapping和HandlerAdapter
<mvc:annotation-driven />
jsp文件的前后缀,控制在/WEB-INF/jsp/ *.jsp/内
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
第三个是Spring的配置文件,主要是用来配置数据库驱动,用户名密码,连接池属性等。
最后说一下需要注意的地方
1.要知道ssm中是怎么获取到界面的输入的值。怎么将数据传到界面中?
2.要懂得界面的跳转是怎么进行的?
3.遇到问题要思考可能在哪里发生,并且查看日志。
参考的各种资料:
这些都是我自己在做任务的时候用到的一些资料,我觉得还是比较有用的。
1.什么是RESTful。
http://www.ruanyifeng.com/blog/2011/09/restful.html
2.http中post,get解释
http://www.techweb.com.cn/network/system/2016-10-11/2407736.shtml
3.springMVC的概念
http://elf8848.iteye.com/blog/875830
4.自己的简单ssm项目giihub
https://github.com/15061110715/task/tree/master/task2/ssmcrud
明天计划:
开始做任务3,然后小课堂搞完
遇到的问题:
没啥问题
收获:
收获很多,关于ssm的框架大致学习了怎么使用,但是还要继续深入。
评论