yijiayi_
yijiayi_
2021/01/18 10:20
  • java
  • eclipse
/*首先D盘根目录下创建students.txt文件(没有D盘或其它特殊情况的同学可以选择在其它盘符下创建)。 接收控制台输入的学生信息实例化学生对象Student,将对象装入ArrayList<Student>集合中。使用对象流能够将集合写入students.txt文件,也要能从students.txt文件中反序列化得到集合,进而获得学生的信息。 完成复制students.txt功能。复制后的文件与students.txt放在相同目录下,名为students拷贝.txt。(二)首先D盘根目录下创建students.txt文件(没有D盘或其它特殊情况的同学可以选择在其它盘符下创建)。 (三)接收控制台输入的学生信息实例化学生对象Student,将对象装入ArrayList<Student>集合中。使用对象流能够将集合写入students.txt文件,也要能从students.txt文件中反序列化得到集合,进而获得学生的信息。(四) 完成复制students.txt功能。复制后的文件与students.txt放在相同目录下,名为students拷贝.txt。我写的代码 为什么读取时只读取了第一次输入的数据啊 以后输入的读取不出来 拜托*/


import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Test1 {
       

	public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
		
		Scanner sc=new Scanner(System.in);		
		FileOutputStream file=new FileOutputStream("students.txt");
		while(true) {
				System.out.println("请选择序号:1.向文件写入学生信息 2.读文件显示学生信息 3.退出");
				int n=sc.nextInt();
				List<Student> list=new ArrayList<>();
				switch (n) {
				case 1: 
					ObjectOutputStream oos=new ObjectOutputStream(file);
					System.out.println("请输入学生的姓名,年龄和性别逗号分隔(例如:张三,12,男)");
					String all=sc.next();
					String arr[]=all.split(",");
					String name=arr[0];					
					int	age=Integer.parseInt(arr[1]);					
					String gender=arr[2];						
					list.add(new Student(name,age,gender));					
					oos.writeObject(list);
					oos.flush();					
					if(oos!=null) {
						oos.close();	
					}				
					break;
				case 2:
					ObjectInputStream ois=new ObjectInputStream(new FileInputStream("students.txt"));
					List<Student> list2=(List<Student>)ois.readObject();
					for (Student student : list2) {
						System.out.println(student);
					}
					
					break;
				case 3:
					ObjectInputStream newois=new ObjectInputStream(new FileInputStream("students.txt"));
					ObjectOutputStream newoos=new ObjectOutputStream(new FileOutputStream("students拷贝.txt"));
					newoos.writeObject(newois);
					System.exit(0);
					break;
				default:
					System.out.println("输入错误");
				
				}
		}
	}

}
0个回复
xyhh97
小天予
2021/01/18 10:07
  • java

如图所示,nacos在Linux机器上启动成功了,最上面是启动日志,查看端口也是监听状态,并且是被nacos的进程占用的,下面用curl访问路径,没有展示页面

1个回复
qq1696518615
୧((〃•̀ꇴ•〃))૭⁺✧
2021/01/18 10:00
  • java
  • mysql

昨晚登陆服务器,我的服务器是windows的,然后启动了mysql查看了一下库,发现库都被删除了,还好是新的服务器,给我留了一个库里面就只有一个表(warning)    数据库版本是8.0.11,请问各位大神有什么办法能恢复过来,虽然数据库有备份但是数据不是最新的

2个回复
qq_33926787
西城中的后街
2021/01/18 09:13
  • java

将number1.txt中的数据读取到内存,然后对数据进行排序后,再写入到number2.txt文件中.

实现步骤:
   1.在当前项目根目录下,创建一个number1.txt文件。

2.定义一个测试类:Test

    2.1创建一个File对象,关联number1.txt文件
    2.2通过File对象进行判断,如果当前对象是一个文件的话,则继续执行下面步骤
    2.3创建一个BufferedReader对象,关键已有的File对象
    2.4创建TreeSet集合对象,泛型为Integer(由于题目要求数字按从小到大进行排序,选择TreeSet数据类型较为合适)
    2.5通过输入流对象读取文件中内容,将每个数字都保存到集合中(注意读取出来的数据是字符串需要将字符串转成Integer类型)
    2.6创建一个BufferedWriter对象,关联到当前项目下的number2.txt文件
    2.7通过输出流对象将TreeSet集合中的所有元素全部写出
源文件数字:

转换后:

 

2个回复
xixidewudu
奚溪子
2021/01/17 23:44
  • spring
  • java
  • java-ee
  • jar

Spring的AOP,作用是通过对切入点进行切面操作,来增强原方法的功能,但是现在我有一个场景:

我用 template.batchUpdate方法对数据库表中的成员进行批量删除,本来是删除年龄在20以下的,但是现在我需要增加一个条件,删除年龄20以下且性别为 女 的成员,我想知道这个问题可以通过AOP的增强方法实现吗?如果可以,增强方法的具体代码该怎么写?

实在没有c币自学穷狗一条,抱歉......

1个回复