关于ssh三大框架整合的碎碎念
三大框架整合,无非就是一个导jar包,修改配置文件的过程。完了就没事了。
还是有很多细节性的问题
比如在spring中写applicationContext.xml文件时不提示:
解决方法如下:
如果写xml不提示:
Window-preferences-myeclipse-xml-xml catalog-user specified entries-add-
1. location:spring-beans-3.1.xsd的路径,在D:\学习\Java\spring\spring-framework-3.2.1.RELEASE-dist\spring-framework-3.2.1.RELEASE\schema\beans(这是我的路径,写上自己的路径即可)
2. uri 路径,同上
3. key type:Schema Location
4. key: http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
xml文件在xmlcatalog中找与key中字符串相同的文件即spring-beans-3.1.xsd
.xsd文件,指明了被这个文件指明的xml文件中能写什么不能写什么
项目中的applicationContext.xml的头部:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd">
Spring对Dao层的支持:
Spring提供了Dao框架,让开发人员无须耦合特定的数据库技术就能进行应用程序的开发
通过DAO接口进行开发,接口的实现通过spring注入
如:User user = new User();
//通过spring配置文件获得UserDao实现类
UserDao userdao=getUserDao();//getUserDao()就是context.getBean();
//再调用dao层的方法
Userdao.insert(user);
getUserDao()就是context.getBean();因此,由于依赖于接口,可以通过依赖注入随时替换UserDao接口的实现类,而应用程序完全不用了解接口和底层数据库的操作细节。
Spring使用持久层,必须知道数据源在哪里,所以要注入数据源。用注入数据源的方式注入数据库。连接数据的方式称为“数据源”,比如JDBC,连接池或者JNDI
Spring通过依赖注入的方式配置数据源:不同系统,数据源的管理更多是针对底层的行为,这些行为不应该影响业务。更换数据源只需要修改bean定义的内容,而不需要修改任何一行代码。
配置datasource
在配置文件中配置数据源:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSouerce">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@localhost:1521:ORCL</value>
</property>
<property name="username">
<value>scott</value>
</property>
<property name="password">
<value>admin</value>
</property>
</bean>
配置PersonDaoBean:datasource所要注入的对象
<bean id="personDao" class="spring.jdbc.dao">
<property name="dataSource" ref="dataSource"/>
</bean>
通过ref属性,spring启动时,dataSource属性就注入到PersonDaoImpl中了。
过程:根据ref中的dataSource去查找persondaoImpl中的setdataSource方法,
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
上面的数据源配置通过参数dataSource传入persondaoImpl的成员变量里。
关于ssh三大框架整合的碎碎念的更多相关文章
- Maven SSH三大框架整合的加载流程
<Maven精品教程视频\day02视频\03ssh配置文件加载过程.avi;> 此课程中讲 SSH三大框架整合的加载流程,还可以,初步接触的朋友可以听一听. < \day02视频\ ...
- SSH三大框架整合案例
SSH三大框架的整合 SSH三个框架的知识点 一.Hibernate框架 1. Hibernate的核心配置文件 1.1 数据库信息.连接池配置 1.2 Hibernate信息 1.3 映射配置 ...
- JavaWeb_(SSH)三大框架整合struts+hibernate+spring_Demo
三大框架整合 一.SSH导包 二.书写Spring 三.书写Struts 四.整合Spring与Struts 五.书写(与整合)Hibernate.引入c3p0连接池并使用hibernate模板 六. ...
- SSH三大框架整合配置详解
首先,三大框架整合,肯定是要导入相当多的jar包,这是不容置疑的! 这里就不一一列举了,直接截图吧: (1) 基于配置文件的整合: 第一步:我们需要在we ...
- SSH 三大框架整合
Spring整合web项目 在Servlet当中直接加载配置文件,获取对象 存在问题 每次请求都会创建一个Spring的工厂,这样浪费服务器资源,应该一个项目只有一个Spring的工厂. 在服务器启动 ...
- SSH三大框架整合步骤
Struts2:需要整合的第一个框架: 1.创建一个动态web项目 2.导入struts2必须的jar 放到 lib目录下 ,再 build path 添加web工程中 3.配置struts2的核心配 ...
- JAVAEE——SSH三大框架整合(spring+struts2+hibernate)
一.整合原理 二.导包(41个) 1.hibernate (1)hibernate/lib/required (2)hibernate/lib/jpa | java persist api java的 ...
- SSH三大框架整合配置详细步骤(3)
5 配置Spring2.5 5.1 基础配置 1) 导入spring包.下载spring-framework-2.5.6并解压后,在spring-framework-2.5.6" ...
- SSH三大框架整合使用的配置文件 注解实现
1 Struts.xml 使用拦截器 <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE str ...
随机推荐
- 这些JavaScript编程黑科技,装逼指南,高逼格代码,让你惊叹不已
Javascript是一门很吊的语言,我可能学了假的JavaScript,哈哈,大家还有什么推荐的,补充送那啥邀请码. 本文秉承着:你看不懂是你SB,我写的代码就要牛逼. 1.单行写一个评级组件 &q ...
- 关于c中的一些新函数
localtime 和 localtime_s: localtime:localtime(const time_t * _Time) time_t t;struct tm *local;time(&a ...
- PHP中Session和Cookie的探究
一.Session (1)Session的由来以及介绍 Session:在计算机中,尤其是在网络应用中,称为“会话控制”,生存时间为用户在浏览某个网站时,从进入网站到关闭这个网站所经过的这段时间,也就 ...
- perf中branch-filter到底是干嘛的?
./arch/x86/events/intel/core.c:2161: data.br_stack = &cpuc->lbr_stack;./arch/x86/e ...
- arp_annouce=2详解
arp_annouce=0的时候 手册上说的是到底是是说当我这个包出去的时候询问arp地址, 当arp_announce=0的时候,是说使用数据包中的地址去进行arp的请求, 当arp_announc ...
- 在js中对日期的加减法
以在某个日期上加减天数来说,其实只要调用Date对象的setDate()函数就可以了,对月份来说,使用setMonth(),具体方法如下: function addDate(date, da ...
- CentOS scp远程拷贝
scp(secure copy)是一个基于 SSH 协议在网络之间进行安全传输的命令, 其格式为“scp [参数] 本地文件 远程帐户@远程 IP 地址:远程目录”. 1.主要参数 -v 显示详细的连 ...
- 【刷题】洛谷 P3809 【模板】后缀排序
题目背景 这是一道模板题. 题目描述 读入一个长度为 \(n\) 的由大小写英文字母或数字组成的字符串,请把这个字符串的所有非空后缀按字典序从小到大排序,然后按顺序输出后缀的第一个字符在原串中的位置. ...
- 后缀自动机SAM学习笔记
前言(2019.1.6) 已经是二周目了呢... 之前还是有一些东西没有理解到位 重新写一下吧 后缀自动机的一些基本概念 参考资料和例子 from hihocoder DZYO神仙翻译的神仙论文 简而 ...
- BZOJ3675 & 洛谷3648 & UOJ104:[Apio2014]序列分割——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=3675 https://www.luogu.org/problemnew/show/P3648 ht ...