本文主要是介绍9.3javaweb总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.axios交互
发送数据到后端。
alert('注册成功(数据正在发送后端)!');// 获取表单数据//const formData = new URLSearchParams(new FormData(document.getElementById("register-form"))).toString();const form = document.getElementById("register-form");const formData = new FormData(form);const dataObject = {};formData.forEach((value, key) => {dataObject[key] = value;});// 发起 Axios 请求await axios.post('/demo5_war/Registered/AddUser', dataObject, {headers: {//'Content-Type': 'application/x-www-form-urlencoded''Content-Type': 'application/json'}}).then(function (response) {// 打印响应数据console.log(response);console.log(response.data);if (response.data != null) {alert("注册成功!您的账号为:"+response.data.id);window.location.href = 'dashboard.html';} else {alert("错误:未收到数据");}}).catch(function (error) {// 打印 Axios 请求错误信息console.error("Axios Error:", error);alert("处理您的请求时出错.");});
后端接收
RegisterController这个控制器继承与BaseServlet2,会先执行父类的servic方法,在执行这个方法,返回值是需要发送给客户端的,所有在这里先转化成json类型的。
获取相关数据后,在对应的类中通过注解查询相关方法,然后通过注解进行参数注入执行相关方法
String uri = req.getRequestURI(); // 获取请求的 URISystem.out.println("uri = " + uri);String methodName = new String(uri.substring(uri.lastIndexOf("/") + 1)).toString(); // 从 URI 中提取方法名Method[] methods = this.getClass().getDeclaredMethods(); // 获取当前类中所有声明的方法String contentType = req.getContentType(); // 获取请求的内容类型System.out.println("请求类型为:" + contentType);ObjectMapper objectMapper = new ObjectMapper(); // 用于将 JSON 转换为 Java 对象JsonNode jsonNode = null;
2.Mybtis的应用
// 加载 MyBatis 的核心配置文件,获取 SqlSessionFactoryString resource = "mybatis-config.xml";InputStream inputStream = Resources.getResourceAsStream(resource);SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);// 获取 SqlSession 对象,用它来执行 SQLSqlSession sqlSession = sqlSessionFactory.openSession(true);// 获取接口代理UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
sqlSession.getMapper(UserMapper.class)
方法获取UserMapper
接口的实现代理,用于执行数据库操作。UserMapper
是一个接口,定义了与数据库交互的方法,如查询、插入、更新、删除等。
执行数据的插入(注册),并释放资源。
userMapper.insertUser(user);
sqlSession.close();
UserMapper接口内部的大致形式
通过MyBatisX插件可以快速找到对应的sql语句。
最后在UserMapper.xml里编写sql语句即可。
这里的parameterType="javaWeb.domain.User表示将一个 User
对象作为参数传递给 SQL 语句。MyBatis 使用这个类来自动提取属性,并将它们映射到 SQL 语句中的相应位置。
<!-- 插入用户 -->
<insert id="insertUser" parameterType="javaWeb.domain.User">
//sql语句</insert>
这篇关于9.3javaweb总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!