我的Python和PHP是怎么学的?是直接写项目,在项目中学的。
不过…这招到 java 里好像不好使了QAQ
零、前置基础
1、类的继承
在 Java 中,extends
用于创建类的继承关系。当一个类继承另一个类时,它会获得父类的属性和方法,并可以扩展或修改这些属性和方法。
联想 PHP:
通过 extends,一个类可以继承另一个类的属性和方法,并且可以重写父类的方法或者增加新的方法和属性。
class Liyue { public function Vision() { return "有很多!"; } } class ChongYun extends Liyue { public function Vision() { return "冰!"; } } class GaMing extends Liyue { public function Vision() { return "火!"; } }
ChongYun 和 GaMing 类分别继承自 LiYue 类。他们重写了 Vision 方法,使不同的角色佩戴不同的神之眼。
在 Java 中,同样使用 extends 来实现 类的继承。
2、MVC 三层架构
-
业务逻辑层 --- servlet --- 处理前后端逻辑
-
服务层 --- service --- 承上启下 / 分流
-
持久层 --- dao --- 写 SQL 语句 的
一、包
Java 包 ≈ 文件夹
一般将 相关联的 类 放在同一个 包 中
Servlet 类 是 Java EE 平台的一部分,用于 处理Web请求 和 生成动态Web内容 。
即:通过使用 Servlet ,接收来自客户端(浏览器)的 请求,并 生成 动态的Web页面内容作为 响应。
```login.jsp 部分
<form action="userLogin.jsp" method="post" onsubmit="return checkForm()">
<label for="username">用户名:</label>
<input type="text" id="username" name="username">
<label for="password">密码:</label>
<input type="password" id="password" name="password">
<input type="submit" value="登录">
<div class="btn-container">
<a class="btn-primary" href="register.jsp">注册</a>
</div>
</form>
```UserLoginServlet.jsp
package cm.role.servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/userLogin.jsp")
// 注解。 给服务器起名字,指明访问的jsp文件
public class UserLoginServlet extends HttpServlet
/*定义了一个名为 UserLoginServlet 的类,
它继承自 HttpServlet 类,表示这是一个处理 HTTP 请求的 Servlet 类。*/
{
@Override
/* Java 注解,用于告诉编译器,被注解的方法是一个覆盖超类中的方法。
* 重写 父类中的方法。 */
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
/* 定义了一个 公有的 没有返回值的 方法 service。
* (HttpServletRequest request, HttpServletResponse response)
* 是 方法 service 的参数,分别代示 请求对象 和 响应对象。
* throws ServletException, IOException 方法可能抛出的异常列表。
* throws 关键字用于标识可能抛出的受检异常: ServletException 和 IOException
* */
{
System.out.println("前后端连接成功");
}
}
此时,在前端页面随意输入账户密码,即跳转到 userLogin.jsp 。
Java 控制台打印出 "前后端连接成功"