Ho creato una semplice app web Java/JSP e aggiunto un servlet Scala di base. Tutto funziona e ho incluso il file Scala e il web.xml qui sotto. Come posso modificare il mio piccolo servlet "trainer" così posso interrogare una tabella MySql e generare una tabella HTML <> ... </table>. A proposito, cercherò Lift in un secondo momento. Al momento, il mio piano è di aggiungere diversi nuovi servlet Scala in un'app Web esistente.Un servlet Scala semplice con connettività di database?
ScalaTrainer.scala
package com.mdm.h4 import javax.servlet.http.{HttpServlet, HttpServletRequest => HSReq, HttpServletResponse => HSResp} class ScalaTrainer extends HttpServlet { def html = <html> <head> <title>Hello Scala</title> </head> <body> <p style="text-align: center">This is 100% pure Scala.</p> <p>It's now {currentDate} </p> <p>My name is {name} and I'm learning {language}. </p> </body> </html> def name = "Mike" def language = "Scala" def currentDate = java.util.Calendar.getInstance().getTime() override def doGet(req: HSReq, resp: HSResp) { resp.getWriter().print(html) } }
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <servlet> <display-name>trainer</display-name> <servlet-name>ScalaTrainer</servlet-name> <servlet-class>com.mdm.h4.ScalaTrainer</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>ScalaTrainer</servlet-name> <url-pattern>/trainer</url-pattern> </servlet-mapping> </web-app>
Non dovrebbe esserci una soluzione più simile a Scala per parlare al DB e generare la tabella HTML? selezionare i campi ("nome" di characterVarying (30)) da ("my_table") –
Sì, ho raccomandato * scala-query * per questo. Vedi http://github.com/szeiger/scala-query/blob/master/src/test/scala/com/novocode/squery/test/MainTest.scala per alcuni codici di esempio. – huynhjl