-
Ubuntu MariaDB + JSP RESTAPI request 받아 XML response 해보기start linux 2021. 9. 4. 13:41
Ubuntu 에 MariaDB를 설치하고 사용자 설정을 했습니다.
MariaDB JDBC 자바 connector 설치했구요
root@ncpmicro:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext# ls mariadb-java-client-3.0.0-alpha.jar mariadb-java-client-3.0.0-alpha.jar
그리고 CSV 형식으로 작성된 텍스트 파일로 데이터를 MariaDB에 LOAD 했습니다.
tomcat 서버를 설치하고 여기에도 MariaDB connector 를 설치했습니다.
root@ncpmicro:/home/tomcat/lib# ls mariadb-java-client-3.0.0-alpha.jar mariadb-java-client-3.0.0-alpha.jar
JSP 가 기본적으로 동작하는지 확인한 다음
파라미터를 받아 MariaDB에 쿼리를 날려 xml 형식으로 값을 받아오고자 합니다.
샘플 코드입니다.
<%@ page import = "java.sql.*" %> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <% String param1 = request.getParameter("Param1"); String param2 = request.getParameter("Param2"); StringBuffer sb = new StringBuffer(); response.setContentType("text/xml"); response.setCharacterEncoding("utf-8"); Statement stm = null; ResultSet rs = null; Class.forName("org.mariadb.jdbc.Driver"); String myUrl = "jdbc:mariadb://serverip/test_db"; Connection conn = DriverManager.getConnection(myUrl, "user01", "1234"); try { stm = conn.createStatement(); String sql = ""; if (param1 != null && param2 != null && param1 != "null" && param2 != "null" && param2 != ""){ sql = "select * from test_table where title LIKE '%" + param1 + "%' or title LIKE '%" + param2 + "%';"; } else { sql = "select * from snim_table where title LIKE '%" + param1 + "%';"; } if(stm.execute(sql)) { rs = stm.getResultSet(); } sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); sb.append("<DataInfo>"); while(rs.next()) { sb.append("<row>"); sb.append("<title>"); sb.append(rs.getString("title")); sb.append("</title>"); sb.append("<desc>"); sb.append(rs.getString("desc")); sb.append("</desc>"); sb.append("</row>"); } sb.append("</DataInfo>"); rs.close(); stm.close(); } catch(Exception e) { out.println("rs.next() ERROR"); } conn.close(); response.getWriter().println(sb.toString()); %>
'start linux' 카테고리의 다른 글
[ Linux ] AWS Ubuntu Java 8 설치하기 (0) 2021.09.16 Ubuntu crontab 크론탭 사용하기 (0) 2021.09.07 [ Linux ] Ubuntu MariaDB 대량 데이터 밀어 넣기 (0) 2021.09.01 [ Linux ] Ubuntu MariaDB 데이터베이스 만들고 사용자 만들기 (0) 2021.08.31 [ Linux ] vi 에디터 명령어 노트 (0) 2021.08.30