SSH
和软件工程;
对于一个接触软件不到一年的菜鸟来说,《
SSH
和软件工程》这么大个题目很难,但是万变不离其宗,以不变应万变;所以一切问题都不是问题;
得到一个题目,怎么办?
答:先脉络后细节;
当然还有其他叫法,
eg
:先计划后实施;先设计后实现;先思路后实践
等;
什么样的脉络是最好的?
没有好不好;只有合不合适;选择自己合适的脉络就
ok
;
eg
:
what+why+when+how
;
软件项目流程:售前欺骗
–
需求分析
- -
项目设计
--
代码实现
----
测试
---
售后讨好
(
项目实施
)
;
一:
what
软件工程的定义和
SSH
的定义没意思;理解就可;
自己看懂就行;别人看不懂是正常的;因为隔行如隔山;
按照传统模式
我们的项目分为
MVC
三层;结合
SSH
可以得出下图:
-------图片怎么搞啊??弄不出来
----
二:
why
这个行业内的前辈多年得出的一个好的结论;对于理解的程度只能靠自己领悟;
面向对象
和
面向接口
和面向服务;
企业的项目不是面向对象的;这就是为什么在实体类里没有写业务操作的原因;写了会怎么样呢?后果自负;
三:
when
有点规模
或者
想以后扩展的项目就应该这样做;
当然那些学习阶段的学习者也可以这样做;
四:
how
先部署;后调试;跟着思路
(
或运用
debug)
看代码;当然前提是明白
SSH
原理的情况下;
----------------------
struts2
流程:
client(browse)-->url--http
协议
-->tomcat-->
找
Application-->web.xml(fitler)-->filter.doFilter()
doFilter()
的执行是参考
struts.xml
struts.xml-->namespace->-action--
当看见有
class
就找去对象
(
访问的时候创建;所以会比较耗内存
)
-->-result--->jsp-->client(browse)
hibernate
总结:
(
映射
和
优化
)
映射:
set
写在
1
的一方;写代码也是这样;
一对多:
多:
1
)说一下属性
;
2
)说一下我表中的哪个列是外键;
3)
也可以说一下属性里面放的东西
--->
只用
<many-to-one/>
一个标签;
inverse
cascade
一般放这里
(
因为是多维护关系
)
;
一:
1
)说一下属性
2
)属性里放的是什么东西
<one-to-many>
3)
指明一下对方的外键;我要靠这个键建立关系
[<key>]
---->
有
<set>
<one-to-many> <key> 3
标签;
多对多:
1)
说明属性;指出外键表
(
独立的
);
2)
属性里面方的是什么东西
;
这个东西代表哪个列;
3
)表中哪个列是指向我的
;<key
column="moduleid"></key>;
一对一
(
通过外键
)
有外键方
1)
说明一下属性
2)
说一下我的哪个键是外键
3)unique="true"
eg:
<many-to-one name="acct" column="FID"
unique="true"lazy="false"/>
无外键方
1) 1)
说明一下属性
2)
说一下我要引用的那个列
(
属性
)?
eg:<one-to-one
name="owner" property-ref="acct"/>
一对一
(
共享主键
)
<one-to-one
name="owner" />
<one-to-one
name="acct" constrained="true"/>
优化:
一级缓存
+
二级缓存
+
三级缓存
(
查询缓存
)
一级缓存:同一个
session
里面
load2
次一个对象;
id
一样;第
2
次不会
sql
查询;
二级缓存:不同的
session
;对象
id
一样;还是不会去数据库查;去二级缓存查;
三级缓存:在配好
2
级缓存的基础上;只有
2
个
hql
语句一样的时候;
spring
总结
(Ioc—AOP--
支持
--acegi)
:
Ioc
:对象实例化的演变:
new(
不方便
)--->factory(
要写多个
Factory)--->Ioc(
工厂的工厂
)
AOP
:代理模式
---
静态代理
----
动态代理
代理职责:完成本分
+
业务委托
配置过程:
1
)搞出切面行为;
eg
事务;
2
)定好切面位置;
eg
:
Advisor
3)
完成织入;
支持:
dao
支持
(jdbc
模板等
)+service
支持
(
事务
,
日志等支持
)+web
支持
(
和
Servlet
,
struts
的集成
)
acegi
框架:运用的
Aop
和
过滤器
来实现
配置文件验证
或者
数据库的验证
达到
用户认证
和
授权
;
----------
---- -----
分享到:
相关推荐
采用了SSH框架、Bootstrap、echarts等技术,围绕软件工程课程实现了用户管理、课程管理、考试管理、教学资源管理、作业管理、学习论坛以及系统管理等7大模块。
小巧的ssh登录软件,小巧的ssh登录软件小巧的ssh登录软件
该文档主要针对那些一开始学SSH框架时迷茫,不知所措的人,希望对你们有点帮助!
SSH的简单工程框架,有LOG管理,有事务管理,有三个框架的衔接,maven的配置
ssh整合好的工程
这是有关于软件工程毕业设计设计的一个论文终稿,希望对大家有帮助
--trainbooking 工程目录文件 --advice 全局异常处理 --constpool 常量池 --controller 控制器 --admin 管理员相关 --user 用户相关 --dto 数据传输对象 --interceptor 前端请求拦截器 --mapper 数据库操作...
ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ...
SSH和SFTP服务分离
SSH权限管理工程
ssh框架源码工程
可能是最好用的ssh软件,人性化,免安装
SSH工程集成之struts2&hibernate;的helloworld部分,工程集成了ssh整个工程的dao和service部分
ssh软件环境搭建
基于java ssh框架的搜索引擎加爬虫网站。 对ssh底层有封装
JuiceSSH 是 Android 手机或者平板上一款的 SSH 远程登录软件。 出门在外,应急必备工具.
SSH项目开DEMO
ssh工程目录(有用) 2
ssh是一款Windows登陆Linux的软件使用也非常简单