【Spring框架05,Java开发教程

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)3.视图控制层:@Controller



@Controller(“lcy”)

public class UserController {

@Autowired

private UserService userService;

public void test() throws Exception {

    userService.test();

}

}




在插入注解的时候自定义,测试中context.getBean调用定义的名字



public class UserServiceTest {

@Test

public void test02() throws Exception {

    ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");

    UserController userController = (UserController)context.getBean("lcy");

    userController.test();

}

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)4.配置spring.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.xsd

    http://www.springframework.org/schema/context

    http://www.springframework.org/schema/context/spring-context.xsd">
    <context:component-scan base-package="com.lcySpring"/>



[](https://codechina.csdn.net/m0_60958482/java-p7)二、模拟用户登录流程

---------------------------------------------------------------------



### [](https://codechina.csdn.net/m0_60958482/java-p7)1.基本的框架配置



![在这里插入图片描述](https://img-blog.csdnimg.cn/ffc8008149794a22a1b7b936c90fed4e.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2JpbmZsY3k=,size_16,color_FFFFFF,t_70)



### [](https://codechina.csdn.net/m0_60958482/java-p7)2.定义用户信息java类



public class User {

private String username;

private String password;



public String getUsername() {

    return username;

}



public void setUsername(String username) {

    this.username = username;

}



public String getPassword() {

    return password;

}



public void setPassword(String password) {

    this.password = password;

}

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)2.dao:验证用户密码是否准确



@Repository

public class UserDao {

private final String USERNAME="lmr";

private final String PASSWORD="lcy";

public User queryUserByName(String username){

    if(username==null||username==""){

        return null;

    }

    else {

        if(username.equals(USERNAME)){

            User user=new User();

            user.setPassword(PASSWORD);

            user.setUsername(USERNAME);

            return user;

        }

        else {

            return null;

        }

    }

}

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)3.service:根据传入的用户名和密码进行格式判断并调用dao验证



@Service(“aaa”)

public class UserService {

@Resource

public UserDao userDao;

public String  login(String username,String password) throws Exception{

   if(username==null||"".equals(username)){

       return "用户名为空";

   }

   if(password==null||"".equals(password)){

       return "密码为空";

   }

   User user = userDao.queryUserByName(username);

   if(user==null){

       return "用户不存在";

   }

   else{

       if(password.equals(user.getPassword())){

           return "登入成功";

       }

       else {

           return "登入失败";

       }

   }

}

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)4.spring.xml中包扫描目录下的所有bean对象



<?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.xsd

    http://www.springframework.org/schema/context

    http://www.springframework.org/schema/context/spring-context.xsd">
    <context:component-scan base-package="com.lcySpring"/>



### [](https://codechina.csdn.net/m0_60958482/java-p7)5.测试java类,进行用户登录模拟



public class UserServiceTest {

@Test

public void login() throws Exception{

    ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");

    UserService userService = (UserService)context.getBean("aaa");

    String login =userService.login("lmr","lcy");

    System.out.println(login);

}

}




[](https://codechina.csdn.net/m0_60958482/java-p7)三、Bean作用域

--------------------------------------------------------------------



### [](https://codechina.csdn.net/m0_60958482/java-p7)1.判断是否是单例



public class SpringScopeTest {

@Test

public void test01(){

    ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");

    System.out.println(context.isSingleton("aaa"));

}

}




### [](https://codechina.csdn.net/m0_60958482/java-p7)2.可以通过修改xml文件中bean标签的scope进行修改



<?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.xsd

    http://www.springframework.org/schema/context

    http://www.springframework.org/schema/context/spring-context.xsd">
    <context:component-scan base-package="com.lcySpring"/>

    <bean id="userService" class="com.lcySpring.service.UserService" scope="prototype"></bean>



### [](https://codechina.csdn.net/m0_60958482/java-p7)3.也可以通过标签设置



@Service(“aaa”)

@Scope(“prototype”)




### [](https://codechina.csdn.net/m0_60958482/java-p7)4.设置懒加载



用到的时候调用就好了






[](https://codechina.csdn.net/m0_60958482/java-p7)四、Bean的生命周期

----------------------------------------------------------------------



### [](https://codechina.csdn.net/m0_60958482/java-p7)1.初始化监听



(1)在配置文件中通过指定init-method属性来完成



    <bean id="accountDao" class="com.lcySpring.dao.AccountDao"  init-method="init"></bean> 


# 最后

金三银四马上就到了,希望大家能好好学习一下这些技术点,需要领取这些学习资料和面试笔记的朋友请**[赶紧点击这里免费获取!](https://codechina.csdn.net/m0_60958482/java-p7)**

学习视频:

![](https://img-blog.csdnimg.cn/img_convert/9c76df21e2290fbe8a5168655784cb63.png)

大厂面试真题:

-------------------------



### [](https://codechina.csdn.net/m0_60958482/java-p7)1.初始化监听



(1)在配置文件中通过指定init-method属性来完成



    <bean id="accountDao" class="com.lcySpring.dao.AccountDao"  init-method="init"></bean> 


# 最后

金三银四马上就到了,希望大家能好好学习一下这些技术点,需要领取这些学习资料和面试笔记的朋友请**[赶紧点击这里免费获取!](https://codechina.csdn.net/m0_60958482/java-p7)**

学习视频:

[外链图片转存中...(img-9l5TRWxO-1629254165402)]

大厂面试真题:

![](https://img-blog.csdnimg.cn/img_convert/bd4b276ef54801ee598e3fc4e30322ac.png)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值