SSM框架学习笔记
管理部门:
--Spring + SpringMVC+MyBatis
1.index.jsp--->SpringMVC(Servlet)
接受客户端的请求,读取页面的值,回传到页面
2.Mybatis(jdbc,Dao)
负责处理数据
3.Spring
1.整合Mybatis,Spring
2.IOC(控制反转)---降低类之间的耦合度
JavaBean容器(所有的对象,都由spring容器)
HeroAddServlet
HeroDao
---entity
---DBCon
整体流程
一、添加jar包
手动自己添加就行了
二、编写所有的配置文件
1.web.xml
- 加载spring的监听器
- 配饰springMVC-config.xml
- 对全局的JavaBean进行配置加载
- 进行过滤字符
<!-- 配置监听spring-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <!-- 指定spring bean 的配置文件所在目录 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param> <!-- 配置spring字符编码为utf-8 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> <!-- springMVC的配置 -->
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springMvc-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern> / </url-pattern>
</servlet-mapping>
2.springMVC-config.xml
- 所有的请求,都交给com.tedu.controller的java文件
- 处理请求后,返回的是.jsp文件
<context:component basePackage="com.tedu.controller">
扫描com.tedu.controller包下所有的java文件
并且查找含有@sevice,@controller,@context 这种注解的java文件然后将该java文件,创建对象。
3.Dao和表,数据源----
applicationContext.xml
这个配置文件,是spring框架的,相当于与一个JavaBean的大容器,帮我们创建所有的对象,并解决所有依赖问题
【1】SqlsessionFactory --sqlSession 可以执行sql语句
【2】数据源
【3】mybatis 表--------->对象 dept(表)---->Dept(对象)
(映射成)
【4】IOC注入,描述类和类之间的关系,帮我们创建所有需要的对象
第一个配置:解决表和对象的映射
注解:
action="deptadd"--->提交给controller包,具体调用哪个方法,如何匹配
@Controller --加给类,相当于new
@requestMapping(value="/daptadd") --加到方法
public string save(){}
@insert
@select
@resultType
2. entity (实体层)
dao (操作数据层)
serviceImpl (接口实现类)
service (接口)
业务逻辑层
add();
findall();
controller
控制层
java 连接 数据库(JDBC)
1。把jar包添加到项目中
2.写代码
1.加载驱动类(com.mysql.jdbc.Driver)
2.在java到数据库之间搭建连接
Connection con;
DriverManager.getConnection(url,"root","5638075")
3.写执行的sql语句
String s = "insert into hero values(4,'菠菜面筋。','死亡之翼')"
4.借助PreparedStatement,执行sql语句
PreparedStatement p = con.prepareStatement(s)
5.查看执行结果
p.executeUpdate()执行
【1】如果sql是增删改(insert,update,delete)
int r =p.executeUpdate()
r=0 则失败
【2】如果sql是select
ResultSet rs = p.executeQuery();
JDBC主要用到的类:
Connection
DriverManager
PreparedStatement
ResultSet
jdbc:mysql://localhost:3306/gamegl
-----------------------------------------------------------------------
①加载驱动的过程,数据库连接的过程——所有的功能都要写一遍,反复调用
DBCon.getCon() return 连接
②HeroAddServlet--读取页面的信息,进行业务逻辑的判断
HeroDao d=new HeroDao();
d.add();
③HeroDao 再加一层,单独去操作表格
add()
findall()
④实体层
未完待续。。。。。。。。。
SSM框架学习笔记的更多相关文章
- Java基础及JavaWEB以及SSM框架学习笔记Xmind版
Java基础及JavaWEB以及SSM框架学习笔记Xmind版 转行做程序员也1年多了,最近开始整理以前学习过程中记录的笔记,以及一些容易犯错的内容.现在分享给网友们.笔记共三部分. JavaSE 目 ...
- SSM框架学习笔记_第1章_SpringIOC概述
第1章 SpringIOC概述 Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架. 1.1 控制反转IOC IOC(inversion of controller)是一种概念 ...
- SSM框架学习笔记(一)
Spring框架 Spring :是一个开源框架,起初是为解决企业应用开发的复杂性而创建的,但是现在已经不止 企业级应用开发,Spring的核心就是提供了一个轻量级的控制反转和面向切面编程. SPri ...
- phalcon(费尔康)框架学习笔记
phalcon(费尔康)框架学习笔记 http://www.qixing318.com/article/phalcon-framework-to-study-notes.html 目录结构 pha ...
- Yii框架学习笔记(二)将html前端模板整合到框架中
选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...
- JavaSE中Collection集合框架学习笔记(2)——拒绝重复内容的Set和支持队列操作的Queue
前言:俗话说“金三银四铜五”,不知道我要在这段时间找工作会不会很艰难.不管了,工作三年之后就当给自己放个暑假. 面试当中Collection(集合)是基础重点.我在网上看了几篇讲Collection的 ...
- JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...
- JavaSE中Map框架学习笔记
前言:最近几天都在生病,退烧之后身体虚弱.头疼.在床上躺了几天,什么事情都干不了.接下来这段时间,要好好加快进度才好. 前面用了三篇文章的篇幅学习了Collection框架的相关内容,而Map框架相对 ...
- JavaSE中线程与并行API框架学习笔记1——线程是什么?
前言:虽然工作了三年,但是几乎没有使用到多线程之类的内容.这其实是工作与学习的矛盾.我们在公司上班,很多时候都只是在处理业务代码,很少接触底层技术. 可是你不可能一辈子都写业务代码,而且跳槽之后新单位 ...
随机推荐
- dos窗口运行python文件提示找不到模块
问题:在pycharm直接运行test_suit.py正常,通过dos窗口运行则提示找不到模块. 原因: https://blog.csdn.net/crylearner/article/detail ...
- <JZOJ5906>传送门
emmm dpdpdp然鹅我考场上并想不到 还是凉凉 #include<cstdio> #include<cmath> #include<iostream> #in ...
- Pandas写excel总结:写入多个sheet、1个sheet写入多行、向已有sheet追加数据
1.最简单最基础的写:1excel1sheet df.to_excel("test.xlxs") 2.在一个excel文件里面写入多个sheet writer=pd.ExcelWr ...
- Vue错误信息解决
在运行Vue项目时提示如下错误: [Vue warn]: You are using the runtime-only build of Vue where the template compiler ...
- python标准库:csv 模块
原文地址:http://www.bugingcode.com/blog/python_csv.html csv 模块被用来读取CSV格式(用逗号分割数值)的数据文件,CSV格式的文件经常在微软的Exc ...
- gerrit Q&A
One or more refs/for/ names blocks change upload 原因 这是错误的原因是底层的git仓库有一些不正确的引用,通常是有些开发者使用过程中,直接推送到git ...
- 浅谈在ES5环境下实现const
最近看到一个面试题--用ES5实现const.作为JS初学者的笔者知道在ES6中有const命令,可以用来声明常量,一旦声明,常量的值就不可改变.例如: 1234567891011 const Pi ...
- ubuntu16.04问题 · 最初的梦想
ubuntu 包管理器命令 1 $ sudo synaptic 安装主题 1 $ sudo apt-get install unity-tweak-tool 下载主题 https://www.sysg ...
- marquee上下无缝滚动
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name=&qu ...
- sklearn简单实现机器学习算法记录
sklearn简单实现机器学习算法记录 需要引入最重要的库:Scikit-learn 一.KNN算法 from sklearn import datasets from sklearn.model_s ...