Day13 httpServlet 与java继承

本文介绍了如何使用HTTPServlet处理HTTP请求,包括无参和有参的GET方法,并展示了如何将对象转换为JSON格式的字符串。同时,文章还探讨了Java中的继承概念,包括属性和方法的继承以及方法重写和多态的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、httpServlet

1.导包

//找包 通过搜索 maven servlet(类名) 到pom.xml导包

<dependencies>
  <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.15</version>
</dependency>
  
  <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>
  
  
  <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.47</version>
</dependency>

  </dependencies>

2. 创建Servlet

2.1无参
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		ProductService ps=new ProductService();
		ArrayList ls=ps.selectAll();
		String rs=JSONObject.toJSONString(ls);//把一个对象转成json格式的字符串
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().append(rs);
		
	}

把一个对象转成json格式的字符串:实现中文识别
response.getWriter().append("hello Java10 ");.append(request.getContextPath());
//默认情况不能识别中文

	String rs=JSONObject.toJSONString(ls);
	//这句话的意思,是告诉servlet用UTF-8转码
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");//html

response返回有两种,一种是字节流outputstream,一种是字符流printwrite。

效果

//http://localhost:8080/homework/UserServlet
在这里插入图片描述

2.2有参
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		//取出请求中的参数
		String productname=request.getParameter("pname");
		ProductService ps=new ProductService();
		Product p1=ps.findByName(productname);
		//把一个对象转成json格式的字符串
		String rs=JSONObject.toJSONString(p1);
		//解决中文乱码问题
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().append(rs);
	}

取出请求中的参数

	String productname=request.getParameter("pname");
效果

//http://localhost:8080/homework/StudentService?pname=香蕉

在这里插入图片描述

二、java 继承

父类

public class Parent {
	public String name;
	public int id;
	public int add(int a,int b) {
		return a+b;
	}
}

子类

public class Child extends Parent{
	public int age;
	public int delive(int a, int b) {
		return a-b;
	}
}
extends表示继承
  • A extends B 表示:A继承了B,也就是A是子类,B是父类

  • 子类拥有父类的属性和方法

  • 父子都有一个方法名字一样,参数一样,返回类型一样的方法
    //这叫,“方法重写”(override)

public class Child extends Parent{
	public int add(int a,int b) {
		return a+b+1;
	}
}
public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Child c=new Child();
		Parent p=new Parent();
		c.age=10;
		c.id=1;//父类属性
		c.name="小花花";//父类属性
		//c.add(1, 2);//子类继承父类的方法
		
		p.id=2;
		p.name="小花花父亲";
		System.out.println("子类继承了父类的属性------"+c.id+c.name);
		
		System.out.println("子类加法:"+c.add(3, 4));//--8
		System.out.println("父类加法:"+p.add(3, 4));//--7
}

多态

//声明变量的类型是父类
//构造方法用的是子类的构造方法
		Parent p2=new Child();
		System.out.println("多态加法:"+p2.add(3, 4));


注意:创建的是子类的对象(看构造方法) 所以输出结果:8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值