Ai
1 Star 0 Fork 0

Yan Honghao/Tomcat-MyBatis

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
StudentOps.java 6.76 KB
一键复制 编辑 原始数据 按行查看 历史
Yan Honghao 提交于 2021-11-23 00:03 +08:00 . 上传工程文件
package com.example.service;
import com.example.controller.SqlSessionController;
import com.example.dao.StudentMapper;
import com.example.domain.Student;
import com.example.domain.StudentStatus;
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 org.apache.ibatis.datasource.DataSourceFactory;
import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;
import org.apache.ibatis.mapping.Environment;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.ibatis.transaction.TransactionFactory;
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
import javax.sql.DataSource;
import java.io.*;
import java.util.Properties;
@WebServlet(name = "studentOps", urlPatterns = "/query")
public class StudentOps extends HttpServlet {
/*private static final Properties prop = new Properties();
private static SqlSessionFactory sqlSessionFactory;
static {
InputStream is = StudentOps.class.getResourceAsStream("dataSource.properties");
try {
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
System.exit(-1);
}
}*/
private static final SqlSessionFactory sqlSessionFactory = SqlSessionController.getSqlSessionFactory();
private static BufferedWriter bw;
static {
try {
bw = new BufferedWriter(new FileWriter("C:\\Users\\yanho\\Documents\\visitor.log"));
} catch ( IOException e ) {
e.printStackTrace();
}
}
@Override
public void init() throws ServletException {
/*
prop.setProperty("driver","org.mariadb.jdbc.Driver");
prop.setProperty("url","jdbc:mariadb://192.168.88.128:3306/MybatisDemo");
prop.setProperty("username","alan");
prop.setProperty("password","123456");
*/
// InputStream is = StudentOps.class.getResourceAsStream("dataSource.properties");
// try {
// prop.load(is);
// } catch (IOException e) {
// e.printStackTrace();
// System.exit(-1);
// }
// DataSourceFactory dataSourceFactory = new UnpooledDataSourceFactory();
// dataSourceFactory.setProperties(prop);
// DataSource dataSource = dataSourceFactory.getDataSource();
// TransactionFactory transactionFactory = new JdbcTransactionFactory();
// Environment environment = new Environment("development",transactionFactory,dataSource);
// Configuration configuration = new Configuration(environment);
// configuration.addMappers("com.example.dao");
// sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
System.out.println("Initialized.");
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// sqlSessionFactory = SqlSessionController.getSqlSessionFactory();
System.out.println("Somebody accessed!");
String userHeader = req.getHeader("User-Agent");
System.out.println(userHeader);
String remoteAddr = req.getRemoteAddr();
int remotePort = req.getRemotePort();
System.out.println(remoteAddr + ": " + remotePort);
System.out.println("--------------------");
bw.write(remoteAddr + ": " + remotePort + "\n");
bw.flush();
StudentStatus studentStatus;
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.println("<!DOCTYPE html> <html lang=\"zh-CN\">");
out.println("<head><meta charset=\"utf-8\" /><title>Student_Info</title> <style>");
out.println("body { background-color: whitesmoke; }");
out.println("table { border-collapse: collapse; border: 1px solid lightgray; margin: auto; background-color: white; text-align: center; } ");
out.println("th, td { width: 120px; }");
out.println("tr:nth-child(odd) { background-color: white; }");
out.println("th { background-color: #4CAF50; color: white; }");
out.println("tr:hover { background-color: lightyellow; }");
out.println("</style> </head> <body> <div>");
/*try (SqlSession session = sqlSessionFactory.openSession()) {
StudentMapper mapper = session.getMapper(StudentMapper.class);
studentStatus = mapper.selectByID(1);
}
out.println("<p>"+studentStatus+"</p>");*/
// out.println("<h2>Student Information</h2>");
out.println("<h2 style=\"text-align: center\">杭州黑马JavaEE_50期扣分记录</h2>");
out.println("<table frame=\"box\" rules=\"all\">");/* frame="box" rules="all"*/
out.println("<tr><th>序号</th><th>姓名</th><th>剩余分数</th><th>预警</th></tr>");
out.println("</html>");
for (int i = 1; i<=86; i++) {
try (SqlSession session = sqlSessionFactory.openSession()) {
StudentMapper mapper = session.getMapper(StudentMapper.class);
studentStatus = mapper.selectByID(i);
}
// out.println("<html><body><div>"+student+"</div></body></html>");
// out.println("<html><body><div>Done.</div></body></html>");
if (studentStatus.getScore() == null)
studentStatus.setScore(40);
if (studentStatus.getStatus() == null)
studentStatus.setStatus("\0");
out.print("<tr><td>" + studentStatus.getID() + "</td><td>" + studentStatus.getName() + "</td><td>" + studentStatus.getScore() + "</td>");
if (studentStatus.getStatus().equals("警告"))
out.println("<td style=\"color: orange\">" + studentStatus.getStatus() + "</td></tr>");
else if (studentStatus.getStatus().equals("严重警告"))
out.println("<td style=\"color: red\">" + studentStatus.getStatus() + "</td></tr>");
else
out.println("<td>" + studentStatus.getStatus() + "</td></tr>");
}
out.println("</table>");
out.println("</div></body>");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
@Override
public void destroy() {
try {
bw.close();
} catch ( IOException e ) {
e.printStackTrace();
}
System.out.println("Destroyed.");
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/CyberWorkspace/tomcat-mybatis.git
git@gitee.com:CyberWorkspace/tomcat-mybatis.git
CyberWorkspace
tomcat-mybatis
Tomcat-MyBatis
master

搜索帮助