共計 1686 個字符,預計需要花費 5 分鐘才能閱讀完成。
本篇文章給大家分享的是有關 xml 字符串怎樣轉換成 Java 對象,丸趣 TV 小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著丸趣 TV 小編一起來看看吧。
controller 里接收發送方的請求:@RequestBody 關鍵字里的東西,就是 http 請求的報文
@XmlRootElement
//@XmlRootElement 關鍵字必須要有
public class User implements Serializable{
private String userId;
public void setUserId(String userId) {
this.userId = userId;
public void setUserName(String userName) {
this.userName = userName;
public static String beanToXml(Object obj, Class ? load) throws JAXBException {JAXBContext context = JAXBContext.newInstance(load);
Marshaller marshaller = context.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.setProperty(Marshaller.JAXB_ENCODING, GBK
StringWriter writer = new StringWriter();
marshaller.marshal(obj, writer);
return writer.toString();
public static Object xmlToBean(String xmlStr, Class ? load) throws JAXBException, IOException {JAXBContext context = JAXBContext.newInstance(load);
Unmarshaller unmarshaller = context.createUnmarshaller();
Object object = unmarshaller.unmarshal(new StringReader(xmlStr));
return object;
}
xml 報文加解密:
private static String decode(String key, String data) {
try {byte[] bytes = Base64.getDecoder().decode(key);
byte[] databytes = Base64.getDecoder().decode(data);
Cipher cipher = Cipher.getInstance( AES
SecureRandom random = SecureRandom.getInstance( SHA1PRNG
random.setSeed(bytes);
KeyGenerator keyGen = KeyGenerator.getInstance( AES
keyGen.init(128, random);
SecretKey secret = keyGen.generateKey();
cipher.init(Cipher.DECRYPT_MODE, secret);
return new String(cipher.doFinal(databytes));
} catch (Exception e) {log.debug(e.getMessage());
return null;
}
以上就是 xml 字符串怎樣轉換成 Java 對象,丸趣 TV 小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注丸趣 TV 行業資訊頻道。
正文完