在当今数字化时代,Java 后端开发技术占据着举足轻重的地位。从大型企业级应用到小型创业项目,Java 凭借其卓越的性能、强大的生态系统和跨平台特性,成为后端开发的首选语言之一。作为一名在 Java 后端领域摸爬滚打许久的开发者,我深知学习过程中的酸甜苦辣,也积累了不少实用的知识与经验。在这篇博客中,我将毫无保留地与大家分享我的学习总结,涵盖基础语法、常用框架、数据库交互以及项目实战中的宝贵实操经验,同时附上大量实用代码示例,希望能助力各位在 Java 后端开发的道路上少走弯路。
int num = 10;
double pi = 3.14;
String name = "John";
int score = 85;
if (score >= 90) {
System.out.println("优秀");
} else if (score >= 80 && score < 90) {
System.out.println("良好");
} else {
System.out.println("再接再厉");
}
int[] arr = {1, 2, 3, 4, 5};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
int[] numbers = new int[5];
numbers[0] = 1;
// 遍历数组
for (int num : numbers) {
System.out.println(num);
}
ArrayList<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
// 访问元素
System.out.println(list.get(0));
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
// 业务逻辑
}
@RestController
@RequestMapping("/api")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users")
public List<User> getUsers() {
return userService.getAllUsers();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//XML" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.dao.UserDao">
<select id="getUserById" resultType="com.example.entity.User">
SELECT * FROM users WHERE id = #{id}
</select>
</mapper>
@Mapper
public interface UserDao {
User getUserById(int id);
}
Class.forName("com.mysql.cj.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "password");
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
while (resultSet.next()) {
System.out.println(resultSet.getString("name"));
}
HikariConfig hikariConfig = new HikariConfig();
hikariConfig.setJdbcUrl("jdbc:mysql://localhost:3306/mydb");
hikariConfig.setUsername("root");
hikariConfig.setPassword("password");
HikariDataSource dataSource = new HikariDataSource(hikariConfig);
@Transactional
public void transferMoney(int fromUserId, int toUserId, double amount) {
// 从一个用户账户扣除金额
userRepository.decreaseBalance(fromUserId, amount);
// 向另一个用户账户增加金额
userRepository.increaseBalance(toUserId, amount);
}
private static final Logger logger = LoggerFactory.getLogger(MyClass.class);
public void doSomething() {
logger.info("开始执行 doSomething 方法");
// 业务逻辑
logger.info("doSomething 方法执行完毕");
}
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<String> handleException(Exception e) {
logger.error("系统出现异常:", e);
return new ResponseEntity<>("系统繁忙,请稍后再试", HttpStatus.INTERNAL_SERVER_ERROR);
}
}
通过对 Java 后端开发技术从基础语法到框架应用,再到数据库交互和项目实战的深入学习,我们逐步构建起坚实的知识体系。然而,技术的发展日新月异,Java 生态也在不断演进。未来,我们需要持续关注新的框架版本、性能优化技巧以及云计算、微服务等新兴领域与 Java 后端的融合。希望这篇学习总结能成为各位读者在 Java 后端之旅中的得力伙伴,让我们一起在代码的世界里不断探索,创造出更强大、更高效的后端应用。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。