A Mason é uma camada de acesso a dados leve e de código aberto para recursos de descanso projetados para serem usados em aplicativos da Web Java. Ele lida com solicitações de API de entrada e rotula os parâmetros para esses recursos.
< dependency >
< groupId >com.metamug</ groupId >
< artifactId >mason</ artifactId >
< version >4.8</ version >
</ dependency >Use tags JSP para editar consultas de banco de dados e manipulação de solicitações. Para implantar as APIs REST de implantação sem compilar/implantar as classes Java. Construa APIs REST com tags JSP.
< jsp : directive .include file = " ../fragments/mason-init.jspf " />
<%-- customer.jsp --%>
< m : resource >
< m : request method = " GET " >
< sql : query var = " customers " dataSource = " ${datasource} " >
SELECT name, address, phone, type from retail_customer
</ sql : query >
< c : set target = " ${output} " property = " customers " value = " ${customers} " />
</ m : request >
</ m : resource >Projeto de amostra
Mason transforma seus velhos JSPs antigos (com bibliotecas de tags arrumadas) em recursos de repouso. Mason não incentiva o uso de roteiros em JSPs de recursos.
Você pode lidar com as solicitações GET, POST, PUT, excluir no seu JSP. Mason foi testado com o Tomcat 9. Jstl.jar enviado com Tomcat é fazer o JSTL funcionar.
Saiba mais sobre as configurações JSP aqui. https://tomcat.apache.org/tomcat-9.0-doc/jasper-howto.html
Você pode gravar consultas de banco de dados dentro dos arquivos JSP do recurso, como visto no exemplo acima ou pode colocá-las em {webAppDir}/WEB-INF/classes/query.properties arquivo e fazer referência a eles dentro dos arquivos JSP para reutilização.
AcceptClone e empacote o projeto com MVN
mvn clean package
Depois disso, você pode encontrar o MTG-mason-1.0.jar dentro da pasta de destino. Você pode usar esse frasco como uma dependência no seu Java WebApp.
Coloque o arquivo jar Mason em {webAppDir}/WEB-INF/lib
Faça o download do arquivo JSTL JAR e coloque-o dentro {webAppDir}/WEB-INF/lib
Crie uma pasta {webAppDir}/WEB-INF/resources/{resourceVersion} e coloque seus arquivos JSP aqui. Por exemplo, mywebapp/WEB-INF/resources/v1.0/foo.jsp .
Importar mtg-mason.tld dentro do seu arquivo JSP. Este taglib está presente dentro do frasco de pedreiro e permite o uso do prefixo MTG . Você também precisará importar o JSTL Taglib. Seu arquivo JSP deve conter o seguinte
<% @taglib uri = " http://java.sun.com/jsp/jstl/core " prefix = " c " %>
<% @taglib uri = " http://java.sun.com/jsp/jstl/sql " prefix = " sql " %>
<% @taglib uri = " mtg-mason.tld " prefix = " m " %>
<%@ page trimDirectiveWhitespaces="true" %>{webAppDir}/WEB-INF/web.xml < filter >
< filter-name >Router</ filter-name >
< filter-class >com.metamug.mason.Router</ filter-class >
</ filter >
< filter-mapping >
< filter-name >Router</ filter-name >
< url-pattern >/*</ url-pattern >
< init-param >
< param-name >datasource</ param-name >
< param-value >jdbc/mason</ param-value >
</ init-param >
</ filter-mapping >Todas as solicitações feitas aos recursos JSP são roteadas através deste filtro.
6.Configure sua fonte de dados em {webAppDir}/META-INF/context.xml .
Você pode dar uma olhada no Sample WebApp.
Exceto pelo Javaee-web-api, pois isso estaria presente no seu servidor de aplicativos e em qualquer um do HSQL, MySQL ou PostgreSQL dependência. Também apoiamos o banco de dados Oracle, mas devido ao seu licenciamento, não podemos enviar o Oracle JDBC Driver. Portanto, caso você esteja usando o Oracle Database, você precisará instalar manualmente seu driver como uma dependência em seu projeto.
Instruções sobre como fazer o mesmo nos links abaixo (você pode consultar um deles). https://www.mkyong.com/maven/how-to-add-oracle-jdbc-driver-in-your-maven-local-repository/ ou https://stackoverflow.com/a/1074971/4800126
A Mason suporta application/xml , applicaton/json e application/json+dataset Leia mais sobre como é usado aqui. https://metamug.com/docs/api-request
Mason suporta Groovy para escrever scripts. Você precisa manter os scripts em {webAppDir}/WEB-INF/scripts
Exemplo de script
// test.groovy
def params = _request . getParams()
res[ ' message ' ] = ' Hello ' + params[ ' name ' ] O script pode ser chamado usando a tag script no recurso JSP.
< m : script file = " test.groovy " var = " res " />Fifra este repositório e envie um PR contra as questões listadas. Quaisquer doações para este projeto serão pagas a desenvolvedores individuais que trabalham em sua capacidade pessoal neste projeto. Recompensá -los por sua contribuição e manter a Mason um projeto comunitário.