Advertisement
Guest User

Untitled

a guest
Nov 2nd, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.38 KB | None | 0 0
  1. package articulos;
  2.  
  3. import java.sql.Connection;
  4. import java.io.*;
  5. import java.sql.DriverManager;
  6. import java.sql.PreparedStatement;
  7. import java.sql.ResultSet;
  8. import java.sql.SQLException;
  9. import java.sql.Statement;
  10. import java.util.HashMap;
  11. import java.util.logging.Level;
  12. import java.util.logging.Logger;
  13. import javax.servlet.http.HttpServlet;
  14. import javax.servlet.*;
  15. import javax.servlet.http.*;
  16.  
  17. public class ServicioNoticias extends HttpServlet {
  18.  
  19. Connection con;
  20. String codUsuario = "";
  21. String nombreUsuario = "";
  22.  
  23. public void init(ServletConfig conf) throws ServletException {
  24. super.init(conf);
  25.  
  26. String driver = null;
  27. driver = conf.getInitParameter("cadenaDriver");
  28. try {
  29. Class.forName(driver); //lee el paran del web.xml
  30. } catch (ClassNotFoundException cne) {
  31. }
  32.  
  33. try {
  34. con = DriverManager.getConnection("jdbc:mysql://localhost/noticias", "root", "");
  35.  
  36. } catch (SQLException sql) {
  37.  
  38. }
  39.  
  40. }
  41.  
  42. public void service(HttpServletRequest peticion, HttpServletResponse respuesta) throws ServletException, IOException {
  43.  
  44. try {
  45. String miResp;
  46. miResp = autorizacion(peticion);
  47.  
  48. if (peticion.getParameter("botonEnviar").equals("EnvioArticulo") && miResp.equals("POST")) {
  49. insertarArticulo(peticion, respuesta);
  50. } else if (peticion.getParameter("botonEnviar").equals("Enviar_Articulos")) {
  51. enviarArticulo(peticion, respuesta);
  52.  
  53. } else if (!miResp.equals("ACCESO DENEGADO") && peticion.getParameter("botonEnviar").equals("Leer_Articulos")) {
  54. leerArticulo(respuesta);
  55. } else {
  56. accesoDenegado(respuesta);
  57. }
  58.  
  59. } catch (SQLException ex) {
  60. Logger.getLogger(ServicioNoticias.class.getName()).log(Level.SEVERE, null, ex);
  61. }
  62.  
  63. }
  64.  
  65. public String autorizacion(HttpServletRequest req) throws SQLException {
  66.  
  67. String valido;
  68. String permiso;
  69. try (Statement stmt = con.createStatement()) {
  70. String consulta;
  71. ResultSet rs;
  72. valido = "";
  73. String usuario = req.getParameter("usuario");
  74. String clave = req.getParameter("clave");
  75. permiso = "";
  76. consulta = "SELECT NOMBRE, ADMITIRENVIO, CODUSUARIO FROM usuarios WHERE NOMBRE = '" + usuario;
  77. consulta += "' AND CLAVE = '" + clave + "'";
  78. rs = stmt.executeQuery(consulta);
  79. while (rs.next()) {
  80. nombreUsuario = rs.getString(1);
  81. valido = rs.getString(2);
  82. codUsuario = rs.getString(3);
  83. }
  84. }
  85.  
  86. if (valido.equals("")) {
  87. permiso = "ACCESO DENEGADO";
  88. } else {
  89. // Permiso sólo para lectura de artículos
  90. if (valido.equals("N")) {
  91. permiso = "GET";
  92.  
  93. // Permiso para lectura y envío de artículos
  94. } else if (valido.equals("S")) {
  95. permiso = "POST";
  96.  
  97. }
  98. }
  99. return permiso;
  100. }
  101.  
  102. public void enviarArticulo(HttpServletRequest peticion, HttpServletResponse respuesta) throws ServletException, IOException {
  103. respuesta.setContentType("text/html"); //response
  104. PrintWriter pw = respuesta.getWriter(); // usamos respuesta porque estoy geenerando unas salida del servidor al cliente
  105. //PrintWriter coge la tabla del sistema oeprativo donde se va a ejecutar
  106. //Cargar el Driver
  107.  
  108. //Generamos la salida del Servlet
  109. pw.println("<!doctype html>");
  110. pw.println("<html lang=\"es\">");
  111. pw.println("<head>");
  112. pw.println("<meta http-equiv='Content-Type' content='text/html'; charset=UTF-8' />");
  113. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos.css'>");
  114. pw.println("</head>");
  115.  
  116. pw.println("<BODY>");//
  117.  
  118. pw.println("<p class='texto'>Introduce el usuario y contraseña</p>");
  119. pw.println("<div class=\"Registro\">");
  120. pw.println("<form accept-charset=utf-8 method='post' action='http://localhost:8080/taysirAlShareefPinero/articulos/articulos.ServicioNoticias'>");
  121. pw.println("<span class='fontawesome-user'></span>");
  122. pw.println("<input type='text' placeholder='Nombre de usuario' name='usuario'>");
  123. pw.println("<span class='fontawesome-lock'></span>");
  124. pw.println("<input type='password' id='password' placeholder='Contraseña' name='clave'>");
  125. pw.println("<br><br>");
  126. pw.println("<p class='texto'>Subir producto</p>");
  127. pw.println("<br><br>");
  128. pw.println("<span class='fontawesome-user'></span>");
  129. pw.println("<input type='text' placeholder='Nombre del artículo' name='titulo'>");
  130. pw.println("<span class='fontawesome-user'></span>");
  131. pw.println("<textarea placeholder='Descripción del artículo' name=\"cuerpo\"rows=\"4\"></textarea>");
  132. pw.println("<br><br>");
  133. pw.println("<input type='submit' value='EnvioArticulo' name='botonEnviar'>");
  134. pw.println("</form>");
  135. pw.println("</div>");
  136.  
  137. /*
  138. pw.println("<SECTION>");
  139. pw.println("<H1>Envío de artículos</H1>");
  140. pw.println("<form accept-charset=utf-8 method='post' action='http://localhost:8080/taysirAlShareefPinero/articulos/articulos.ServicioNoticias'>");
  141. pw.println("<p> Por este nombre te reconoce el sistema</p>");
  142. pw.println("<input type=\"text\" name=\"usuario\" size:\"25\">");
  143. pw.println("<br><br>");
  144. pw.println("<p>Introduce tu contraseña</p>");
  145. pw.print("<input type=\"password\" name=\"clave\" size:\"25\" maxlength=\"5\">");
  146. pw.println("<br><br>");
  147. pw.println("<H2>Título del Artículo a enviar:</H2>");
  148. pw.println("<input type=\"text\" name=\"titulo\" size:\"55\">");
  149. pw.println("<br><br>");
  150. pw.println("<H2>Cuerpo del Artículo:</H2>");
  151. pw.println("<textarea name=\"cuerpo\"rows=\"4\">");
  152. pw.println("</textarea>");
  153. pw.println("<br><br>");
  154. pw.println("<input type=\"submit\" value=\"EnvioArticulo\" name=\"botonEnviar\">");
  155.  
  156. pw.println("</form>");
  157. pw.println("</SECTION>");
  158. */
  159. //pw.println("<h1> Tus datos son: </h1>");
  160. //pw.println("<h2>Usuario: " + usuario + "</h2>");
  161. //pw.println("<h2>Contraseña: " + clave + "</h2>");
  162. pw.println("</BODY>");
  163. pw.println("</HTML>");
  164.  
  165. }
  166.  
  167. public void insertarArticulo(HttpServletRequest peticion, HttpServletResponse respuesta) throws ServletException, IOException {
  168. PrintWriter pw = respuesta.getWriter();
  169. String laheliao = "ram";
  170. int resultado = 0;
  171. try {
  172.  
  173. PreparedStatement pstmt;
  174. String query = "INSERT INTO `articulos` (`CODUSUARIO`, `TITULO`, `CUERPO`) VALUES ( ?,?,?)";
  175. pstmt = con.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  176. pstmt.setString(1, codUsuario);
  177. pstmt.setString(2, peticion.getParameter("titulo"));
  178. pstmt.setString(3, peticion.getParameter("cuerpo"));
  179. resultado = pstmt.executeUpdate();
  180. if (resultado == 1) {
  181. pw.println("<H2>INSERTS REALIZADOS SATISFACTORIAMENTE.</H2>");
  182. pw.println("<H2> SERÁS REDIRIGIDO A LA PÁGINA PRINCIPAL EN 5 SEGUNDOS</H2>");
  183. } else {
  184. pw.println("<H2>NO SE HAN PODIDO REALIZAR LOS INSERTS.</H2>");
  185. }
  186.  
  187. } catch (SQLException e) {
  188.  
  189. laheliao = e.getMessage();
  190. }
  191.  
  192. pw.println("<!doctype html>");
  193. pw.println("<html lang='es'>");
  194. pw.println("<head>");
  195. pw.println("<META HTTP-EQUIV='REFRESH' CONTENT='5;URL=http://localhost:8080/Prueba1/index.html'>");
  196. pw.println("<meta http-equiv='Content-Type' content='text/html'; charset=UTF-8' />");
  197.  
  198. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos.css'>");
  199. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos2.css'>");
  200.  
  201. pw.println("</head>");
  202.  
  203. pw.println("<BODY>");
  204. pw.println("<SECTION>");
  205.  
  206. pw.println("</SECTION>");
  207. pw.println("</BODY>");
  208. pw.println("</HTML>");
  209.  
  210. }
  211.  
  212. public void leerArticulo(HttpServletResponse respuesta) throws ServletException, IOException {
  213. PrintWriter pw = respuesta.getWriter();
  214. String laheliao = "ram";
  215. int resultado = 0;
  216. String titulo = "";
  217. String cuerpo = "";
  218. HashMap<String, String> articulos = new HashMap<String, String>();
  219. try {
  220.  
  221. PreparedStatement pstmt;
  222. ResultSet rs;
  223. String query = "SELECT * FROM `articulos` WHERE CODUSUARIO= " + "'" + codUsuario + "'";
  224. pstmt = con.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  225. rs = pstmt.executeQuery(query);
  226. while (rs.next()) {
  227. titulo = rs.getString("TITULO");
  228. cuerpo = rs.getString("CUERPO");
  229. articulos.put(titulo, cuerpo);
  230. }
  231.  
  232. } catch (SQLException e) {
  233. laheliao = "ylosabes";
  234. }
  235. pw.println("<!doctype html>");
  236. pw.println("<html lang=\"es\">");
  237. pw.println("<head>");
  238. pw.println("<meta http-equiv='Content-Type' content='text/html'; charset=UTF-8' />");
  239. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos2.css'>");
  240. pw.println("</head>");
  241.  
  242. pw.println("<BODY>");
  243. pw.println("<SECTION>");
  244. pw.println("<H3>Los artículos de: " + nombreUsuario + "</H3>");
  245. pw.println("<ul>");
  246. pw.println("<table>");
  247. pw.println("<tr>");
  248. pw.println("<th>Artículo</th>");
  249. pw.println("<th>Descripción</th>");
  250. pw.println("<tr>");
  251.  
  252. for (String key : articulos.keySet()) {
  253. pw.println("<tr>");
  254. pw.println("<td>" + key + "</td><td>" + articulos.get(key) + "</td>");
  255. pw.println("</tr>");
  256. }
  257. pw.println("<table>");
  258. pw.println("</SECTION>");
  259. pw.println("</BODY>");
  260. pw.println("</HTML>");
  261.  
  262. }
  263.  
  264. public void accesoDenegado(HttpServletResponse respuesta) throws ServletException, IOException {
  265. PrintWriter pw = respuesta.getWriter();
  266. pw.println("<!doctype html>");
  267. pw.println("<html lang=\"es\">");
  268. pw.println("<head>");
  269. pw.println("<meta http-equiv='Content-Type' content='text/html'; charset=UTF-8' />");
  270. pw.println("<META HTTP-EQUIV='REFRESH' CONTENT='5;URL=http://localhost:8080/Prueba1/index.html'>");
  271. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos.css'>");
  272. pw.println("<link rel='stylesheet' href='http://localhost:8080/Prueba1/estilos2.css'>");
  273. pw.println("</head>");
  274.  
  275. pw.println("<BODY>");
  276. pw.println("<SECTION>");
  277. pw.println("<H1>ACCESO DENEGADO!!!!!</H1>");
  278. pw.println("<H2> SERÁS REDIRIGIDO A LA PÁGINA PRINCIPAL EN 5 SEGUNDOS</H2>");
  279. pw.println("</SECTION>");
  280. pw.println("</BODY>");
  281. pw.println("</HTML>");
  282. }
  283.  
  284. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement