达内云笔记心得
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
加密与过滤 过滤器Filter
AOP
doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { }
Filter
req.getRequestURI() Get URL
@Before
@After Returning
@After Throwing
@After
切面: 横截面
@Around
逻辑
Log.txt 文 本
Queue阻 塞队列
声明事务特性
@Transactional(readOnly=true) 动态SQL拼接
<select id="findNotebooksByPage" parameterType="map" resultType="map"> SQL <if test="start != null"> limit #{start}, #{rows} </if> </select>
视图层:返回用户输 入的信息,并给予回 应 数据库以实体类或 者是map为载体,对 其中的表进行更新 或查找
View层
调用cookie用于实现跨页面的数据传输:浏览器 某段时间对cookie进行持久化
$.ajax{ Var url=控制器地址; Var data=…; Var type=‚请求方式‛.; Var datatype= ‚信息载体类型json对象; }
var data = {controller里的参 数: controller 中jsonresult 传过 来的data中的属性的值 /Cookie的value};
$(‘’) ,将DOM转 化为jQuery对象 jQuery的各种方法
其他方法: $.post() ; $.load(),作用类似ajax
向数据库传入由service传入的数据
service层提供需要返回的参数
DataBases
DAO层提取数据,并且也传递数据以供DAO层查询
DAO
Update set
Select … from
Insert into
Different
பைடு நூலகம்
View
浏览器传给服务器的请求和参数 不同
DAO service
业务层:接受从dao层返回的实体类或map, 将信息传递给视图层,同时根据视图层给予 其不同参数类型的jsonresult 调用不同的 dao层方法,实现与dao层的交互 自身由 spring容器管理 Dao层: 根据业务层调用的指令,从而生产出 不同的dao方法交由spring-mybatis 由 mybatis 完成对数据库的操作,spring对该 接口进行管理
SQL语句问题
SqlSessionFactory 修改配置 Web-xml配置或程 序错误,忘记导包
1 3
2 4
propagation=Propagation.REQUIRED
@Around 中joinPoint是连接点对象, 调用joinPoint.proceed(), 可以执行后续业务方法, joinPoint.getSignature() 可以获取当前调用方法的签名信息。
isolation=Isolation.DEFAULT 可以提交的数据
控制层:业务层 视图层
Cloud Note
由mybatis根据DDL,DML语句对数据库进 行更新,并将这些方法抽象出来,放入dao的 接口中.
视图层
视图层:控制层
业务层@Service,满 足不同的业务需求, 与Dao完成交互 Dao 层 与数据库 完成交互
调用业务层与视图层进 行交互
Common
Cloud Note
同组人员: 彭子文 杜海良 戈汉彪 陈 阳
Cloud Note
功能 简介 基础功 能共同 点 错误 及调 试 基础 功能 不同 点
AOP
功能简介
笔记本增加功能: 登录功能:已注册的学生登 录进入笔记编辑页面
笔记增加功能:向笔记本中增加笔记
login
register
save
add
需要返回的参数和从DAO层抽取 的参数不同 返回值不同,参数类型不同,导致不 同的SQL语句
doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { }
Controller
Localhost:8080 @Controller:将自己纳入spring容器管理中
@C @R
>
>
>
@ResponseBody:利用jackson包将 信息发送给浏览器 用于向浏览器传送数据,state:表示信息传递是否成功,message表 示异常的信息,data:传递数据的实体类.data是Object类,方便传 送各类数据.故而用泛型表示 @ExceptionHandler 来抛出异常并用并将异常包裹在 json对象中发给服务器
@E
>
@Service
DI(依赖注入):DAO注入到 Service @Resource
@R @
if
If语句进行业务逻辑的判断,并适当 的抛出异常
Dao层的对象调用dao层方法,期 间传入从controller中发送过来的 数据
返回一个jsonresulet对象中data 参数的类型
DAO
根据service传递的参数和需要返回 的参数类型 完成dao层接口,和mapper中的 SQL语句 根据service传递的参数和需要返回的参数类型 完成dao层接口,和mapper中的SQL语句
遇见的问题以及解决方法
1 2
3
classNotFoundException BadSql
BeancreateException
错误404,500,406
4
解决方案
classNotFoundException badSql BeancreateException 错误404,500,406
Java代码错误
req.getServletContext();
getCookie Get cookies WebApplicationContextUtils.getWebApplicationContext(sc); Get this ApplicationContext
获取当前service对象,调用方法
判断条件来确定是否通过 chain.doFilter(req, res);
Test
注册功能:注册新的用户 保存笔记:实时更新笔记内容以及标题
对程序的调试:基础逻辑上 的完善
所用到的技术
视图层:ajax 异步请求:向服务器发送用户输入的数据 jQuery技术:从服务器索取数据并给用户呈现页面
数据层:dao
数据层:数据和实 体类
视图层:控制器 spring-mvc,jackson共同完成交互,交互载 体为JsonResult 的实体类,调用业务层实现 类的方法,完成交互 自身由spring容器管理
AOP 性能测试
@Before 在业务方法之前调用 @AfterReturning 在业务方法正常 (没有异常)结束以后调用 @AfterThrowing 在业务方法出现 以后异常调用 @After 无论业务方法是否出现异 常,都会调用 @Around 在业务方法周围调用 Bean 组件切入Bean (组件ID) 类切入点:Within(类全名) *方法切入点:execution 方法名