Java最新Java后端开发——Spring实验_java后端开发项目,Java开发经验谈

最后

整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

image

image

其实面试这一块早在第一个说的25大面试专题就全都有的。以上提及的这些全部的面试+学习的各种笔记资料,我这差不多来回搞了三个多月,收集整理真的很不容易,其中还有很多自己的一些知识总结。正是因为很麻烦,所以对以上这些学习复习资料感兴趣,

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

4.测试:启动Spring,获取Hello示例。
package com.javaweb.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.javaweb.bean.HelloSpring;
public class TestHelloSpring {
  public static void main(String[] args) {
     // 初始化spring容器,加载applicationContext.xml配置
     ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
       // 通过容器获取配置中helloSpring的实例
    HelloSpring helloSpring = (HelloSpring) applicationContext.getBean("helloSpring");
		helloSpring.show();// 调用方法 }
	}
}

在这里插入图片描述

二、Spring基于XML装配实验

说明:使用Spring IOC模拟实现账户添加功能程序

1.创建JavaBean类:Account.java
package com.javaweb.bean;

public class Account {

private String name;
private String id;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}

在这里插入图片描述

2.创建DAO类: AccountDao.java

模拟账户添加操作

package com.javaweb.dao;

import com.javaweb.bean.Account;

public class AccountDao {

public void save(Account account) {
System.out.println("添加账户信息");
}
}

在这里插入图片描述

3.创建Service类:AccountService.java

模拟账户添加业务

package com.javaweb.service;

import com.javaweb.bean.Account;
import com.javaweb.dao.AccountDao;

public class AccountService {
	private AccountDao dao;
	
	public void setDao(AccountDao dao) {
		this.dao = dao;
	}
	public void save(Account account) {
		dao.save(account);	
	}

}

在这里插入图片描述

4.创建Controller类:AccountController.java

在Web下模拟账户添加请求。

package com.javaweb.controller;

import com.javaweb.bean.Account;
import com.javaweb.service.AccountService;

public class AccountController {
	private AccountService service;
	
	public void setService(AccountService service) {
		this.service = service;
	}

	public void save() {
		Account account=new Account();
		account.setId("12343546465");
		account.setName("张三");
		service.save(account);
	}

}

在这里插入图片描述

5.编写applicationContext.xml配置文件

Dao装配到Service,Service装配到Controller

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="helloSpring" class="com.javaweb.bean.HelloSpringE">
<property name="userName" value="张三"></property>
</bean>
<bean id="accountDao" class="com.javaweb.dao.AccountDao"></bean>
<bean id="accountService" class="com.javaweb.service.AccountService">
<property name="dao" ref="accountDao"></property>
</bean>
<bean id="accountController" class="com.javaweb..controller.AccountController">
<property name="service" ref="accountService"></property>
</bean>
</beans>

在这里插入图片描述

6.创建TestAccount.java

在main()方法中加载XML配置文件,实现Spring容器的初始化,通过Spring容器获取Bean实例accountController完成save()方法调用。

package com.javaweb.test;

import com.javaweb.controller.AccountController;

public class TestAccount {

public static void main(String[] args) {
AccountController c=new AccountController();
c.save();
}

}

在这里插入图片描述

三、Spring基于注解装配实验

1.导入依赖

在项目中导入spring-aop.jar依赖包,它包含在应用中使用Spring的AOP特性时所需的类,注解实现需要依赖AOP才能实现。
在这里插入图片描述

2.XML配置文件

创建applicationContext.xml,在该文件中引入Context约束并启动Bean的自动扫描功能。

<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/c
http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="com.javaweb" />
</beans>

在这里插入图片描述

3.定义实体类

新建entity包,在entity包下创建User实体类。

package com.javaweb.entity;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

@Component("user")
@Scope("singleton")
public class User {
@Value("1")
private int id;
@Value("张三")
private String name;
@Value("123")
private String password;
// 省略getter/setter方法和toString()方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

在这里插入图片描述

4.定义dao层

创建UserDao接口作为数据访问层接口,并在UserDao接口中声明save()方法,用于查询User实体的对象信息。

package com.javaweb.dao;

public interface UserDao {
public void save();
}

在这里插入图片描述

5.实现dao层

创建UserDaoImpl作为UserDao的实现类,并在UserDaoImpl类中实现UserDao接口中的save()方法。

package com.javaweb.dao;

import javax.annotation.Resource;

import org.springframework.stereotype.Repository;

import com.javaweb.entity.User;

@Repository("userDao")
public class UserDaoImpl implements UserDao {
@Resource(name="user")
private User user;
public void save(){
System.out.println(user);
System.out.println("执行UserDaoImpl.save()");
}
}

在这里插入图片描述

6.定义service层

创建UserService接口作为业务逻辑层接口,并在UserService接口中定义save()方法。

package com.javaweb.service;

public interface UserService {
public void save();
}

在这里插入图片描述

7.实现service层

创建UserServiceImpl作为UserService的实现类,并在UserServiceImpl类中实现UserService接口中的save()方法。

package com.javaweb.service;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.javaweb.dao.UserDao;

@Service("userService")
public class UserServiceImpl implements UserService {
//使用@Resource注解注入UserDao
@Resource(name="userDao")
private UserDao userDao;
public void save(){


### 最后

由于文案过于长,在此就不一一介绍了,**这份Java后端架构进阶笔记内容包括:Java集合,JVM、Java并发、微服务、SpringNetty与 RPC 、网络、日志 、Zookeeper 、Kafka 、RabbitMQ 、Hbase 、MongoDB、Cassandra 、Java基础、负载均衡、数据库、一致性算法、Java算法、数据结构、分布式缓存**等等知识详解。

![image](https://img-blog.csdnimg.cn/img_convert/0168dbf86da0f88b1b4fd3f3cbc7b74c.webp?x-oss-process=image/format,png)

本知识体系适合于所有Java程序员学习,关于以上目录中的知识点都有详细的讲解及介绍,掌握该知识点的所有内容对你会有一个质的提升,**其中也总结了很多面试过程中遇到的题目以及有对应的视频解析总结。**

![image](https://img-blog.csdnimg.cn/img_convert/cb981fcd9c4cc409eca1dd9ef99077c9.webp?x-oss-process=image/format,png)

![image](https://img-blog.csdnimg.cn/img_convert/fd235cb6fe04c9b31cf18415b5fe9f25.webp?x-oss-process=image/format,png)

> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**

**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

本知识体系适合于所有Java程序员学习,关于以上目录中的知识点都有详细的讲解及介绍,掌握该知识点的所有内容对你会有一个质的提升,**其中也总结了很多面试过程中遇到的题目以及有对应的视频解析总结。**

[外链图片转存中...(img-NGG4Y3gp-1715376200513)]

[外链图片转存中...(img-VVWWlirW-1715376200514)]

> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**

**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

  • 17
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值