目录

1、Spring注解主要用来替xml配置文件:

2、xml中特殊符号转译:


1、Spring注解主要用来替xml配置文件:

/*spring原始注解主要代替<Bean>的配置
*
* @Component:使用在类上用于实例化Bean//不知道当前位于哪一层
* @Controller:使用在web层类上用于实例化Bean
* @Service:使用在service层类上用于实例化Bean
* @Repository:使用在dao层类上用于实例化Bean
*
* @Value:注入普通属性
* @Autowired:使用在字段上用于根据类型依赖注入
* @Qualifier:结合@Autowired一起使用用于根据名称进行依赖注入
* @Resource:相当于@Qualifier+@Autowired,按照名称注入
*
* @Scpoe:注入Bean的作用范围
*
* @PostConstruct:使用方法上标注该方法是Bean的初始化方法
* @PreDestory:使用能够在方法上标注该方法是Bean的销毁方法新注解:
* @Configuration:用于指定当前类是一个Spring配置类,当创建容器时会从该类加载注解
* @ComponentScan:用于指定Spring的初始化容器时要扫描的包
* @Bean:使用在方法上,标注将该方法的返回值存储到Spring容器中
* @PropertySourcce:用于加载.properties文件中的配置
* @Import:用于导入其他配置类
*
*
* */

@WebServlet注解属性

@WebFilter注解属性

//接口:UserDao与UserService只有save();

//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"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"><!--加载外部的properties文件   EL表达式--><context:property-placeholder location="classpath:jdbc.properties"/><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass" value="${jdbc.driver}"></property><property name="jdbcUrl" value="${jdbc.url}"> </property><property name="user" value="${jdbc.username}"></property><property name="password" value="${jdbc.password}"></property></bean><!--spring注解开发 组件扫描--><context:component-scan base-package="lianxiImpl_1"/>
</beans>

//UserDaoImpl

package lianxiImpl_1;import lianxi_1.UserDao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Repository;/* <bean id="userDao" class="lianxiImpl_1.UserDaoImpl"></bean>*///@Component("userDao")
@Repository("userDao")public class UserDaoImpl implements UserDao {public UserDaoImpl() {System.out.println("UserDaoImpl()无参构造创建对象");}public void save() {System.out.println("UserDao的save()执行");}
}

//UserServiceImpl

import lianxi_1.UserDao;
import lianxi_1.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;/*  <bean id="userService" class="lianxiImpl_1.UserServiceImpl">*/
//@Component("userService")
@Service("userService")
@Scope("prototype")//@Scope("singleton")public class UserServiceImpl implements UserService {@Value("${jdbc.driver}")private String driver;//private String driver=="要注入driver的值";==@Value("要注入driver的值")/*<property name="userDao" ref="userDao"></property>*///@Autowired//自动注入 按照数据类型从spring容器中进行匹配 一般用于单个bean//要注入谁就写谁的id 按照id从spring容器中进行匹配 一般用于多个bean 但此处@Qualifier结合Autowired一起用//@Qualifier("userDao")@Resource(name = "userDao")//Resource相当于@Qualifier+@Autowiredprivate UserDao userDao;/* public void setUserDao(UserDao userDao) {this.userDao = userDao;}使用原始注解方法 set()可以省略不写*/public void save() {System.out.println(driver);userDao.save();}@PostConstructpublic void init(){System.out.println("Service对象初始化方法");}@PreDestroypublic void destroy(){System.out.println("Service对象销毁方法");}}

//模拟web层

package lianxi_1;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class UserController_web {public static void main(String[] args) {ClassPathXmlApplicationContext app=new ClassPathXmlApplicationContext("applicationContext.xml");UserService userService = app.getBean(UserService.class);userService.save();app.close();}
}

2、xml中特殊符号转译:

>        &lt;<        &gt;&        $amp;'        &apos;"        &quot;空格符        &nbsp;=================================================¥ 人民币符        $yen;©版权符        &copy;®注册标        &reg;℃摄氏度        &deg;±正负号        @plusmn;乘号        &times;除号        &divide;平方2(上标)        &sup2;平方3(上标)        &sup3;

Spring中IOC注解开发;xml中常用字符转译相关推荐

  1. spring中的注解和xml配置文件中配置对应总结

    spring中的注解和xml配置文件中配置对应 需要导入的jar spring-context spring-context-support spring-test commons-logging b ...

  2. Spring IOC注解开发

    Spring IOC注解开发 @(Spring)[Spring, ioc, 注解] Spring IOC注解开发 Spring的IOC的注解使用步骤 创建项目引入jar包 引入配置文件 创建相关包和类 ...

  3. Spring学习:Spring的IOC注解

    文章目录 一.简介 二.IOC注解 (一)常用的注解 (二)扫描包 (三)数据装配 三.生命周期 四.Bean实例化的时机 五.Bean在IOC容器中单例和多例 六.SpringIOC注解完整示例代码 ...

  4. xslt中的Javascript取得xml中的参数

    xslt中的Javascript取得xml中的参数 使用xslt解析xml的时候,需要把xml中的参数传到javascript中, 可以用xslt作为中转, xsl: <input type=& ...

  5. spring中使用注解代替xml配置

    今天两部分内容,第一部分是注解,使用注解配置Spring,然后第二个是Spring中的AOP,今天就需要这两部分,也没有练习,第一个注解配置Spring,这三大框架都是用注解来配置,这三大框架,都是支 ...

  6. JavaEE(10)Spring中的注解开发、静态/动态代理

    1. 使用注解开发 1. 说明 (1)在Spring4之后,想要使用注解的形式,必须先引入aop包 (2)在配置文件中,引入context约束 <?xml version="1.0&q ...

  7. 5、Spring SPEL使用之--在XML中使用SPEL

    SPEL(Spring Expression Language)即Spring3中功能丰富强大的表达式语言,简称SpEL.SpEL是类似于OGNL和JSF EL的表达式语言,能够在运行时构建复杂表达式 ...

  8. Spring框架IOC基础及XML的配置 第二章

    1 Spring概述 1.1 关于框架 框架的概念 框架:特指软件框架,它是我们在实际开发中解决项目需求的技术集合.运用框架可以大大简化代码的编写,缩短开发周期.同时,对后续负责项目维护的人员降低技术 ...

  9. 【Spring Web MVC】Spring Web MVC 注解开发环境搭建

    为什么80%的码农都做不了架构师?>>>    1.创建maven项目 创建一个名为:springwebmvc-first的maven项目 2.添加依赖包 要使用springWebM ...

最新文章

  1. 《TensorFlow技术解析与实战》——第3章 可视化TensorFlow 3.1PlayGround
  2. 6kyu Build a pile of Cubes
  3. Vivado无法双击打开xpr工程文件的解决办法
  4. go语言基础到提高(9)-go ide
  5. Python的Virtualenv(虚拟环境)的使用(Windows篇)2
  6. c#发送邮件,可发送多个附件
  7. 学习HTML的第二次课
  8. linux 设置pip 镜像 Pip Warning:–trusted-host 问题解决方案
  9. 固定于计算机主机,一种便于固定的计算机主机的制作方法
  10. 代码是写给人看的还是写给机器看的?
  11. ActiveMQ(4) ActiveMQ JDBC 持久化 Mysql 数据库
  12. 80sec被黑原因分析
  13. Mac上使用SecureCRT
  14. 3GP、MP4视频转换器下载
  15. Pycharm修改图片大小
  16. session 修改密码python_django修改密码强制退出机制
  17. 拍拍抢拍精灵v2.1秒杀器所有源代码【开源】
  18. 人工神经网络的基本原理及其应用
  19. coderwhy--前端知识整合包--htmlcss05
  20. 5G,上天了!卫星和基站擦出了火花?

热门文章

  1. shopping计算器
  2. Redis可视化管理工具推荐
  3. mac如何更新git版本
  4. 兴趣社交再度站在风口,谁能成功入局?
  5. 一文读懂torch.autograd.backward()作用及原理
  6. java获取中国城市代码 中国城市ID
  7. 黑苹果OC引导注入_黑苹果Clover 引导删除多余启动项教程
  8. 回归问题评估模型的三个指标
  9. GitLab的安装与设置
  10. Python表白代码