是否可以在PostgreSQL中创建用户而不提供纯文本密码(理想情况下,我希望能够创建一个只提供用sha-256加密的密码的用户)?
我想做的是创建一个类似的用户:
CREATE USER "martin" WITH PASSWORD '$6$kH3l2bj8iT$KKrTAKDF4OoE7w.oy(...)BPwcTBN/V42hqE.';
Run Code Online (Sandbox Code Playgroud)
有办法做到这一点吗?
谢谢您的帮助.
我是Play!的新手,我正在尝试将现有网站从cakePHP迁移到Play!.
我面临的问题是表单验证.
我定义了一个案例类User,代表我网站的用户:
case class User(
val id: Long,
val username: String,
val password: String,
val email: String
val created: Date)
Run Code Online (Sandbox Code Playgroud)
(还有一些字段,但这些字段足以解释我的问题)
我希望我的用户能够使用表单在我的网站上创建一个帐户,我希望这个表单能够通过Play!进行验证.
所以,我创建了以下操作:
def register = Action {
implicit request =>
val userForm = Form(
mapping(
"id" -> longNumber,
"username" -> nonEmptyText(8),
"password" -> nonEmptyText(5),
"email" -> email,
"created" -> date)(User.apply)(User.unapply))
val processedForm = userForm.bindFromRequest
processedForm.fold(hasErrors => BadRequest("Invalid submission"), success => {
Ok("Account registered.")
})
}
Run Code Online (Sandbox Code Playgroud)
显然,我不希望用户在表单中自己填写id或创建日期.所以我的问题是:我该怎么办?
我应该定义一个新的"转换模型",其中只包含实际提供给表单中用户的字段,并在将此中间模型插入到我的数据库之前将其转换为完整的模型吗?
也就是说,用这样的东西代替我的行动:
def register = Action {
implicit request =>
case …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用如何提取文件 jre-9/lib/modules?.
该解决方案有效,但似乎分配给读取 Java 运行时映像内容的资源从未被释放,从而导致内存泄漏,例如可以通过 VisualVM 观察到:
如何修复以下再现中的内存泄漏?
package leak;
import java.net.URI;
import java.net.URL;
import java.net.URLClassLoader;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Collections;
import java.util.Map;
import java.util.stream.Stream;
public class JrtfsLeak {
public static void main(String[] args) throws Exception {
Path javaHome = Paths.get(args[0]);
for (int i = 0; i < 100000; ++i) {
modules(javaHome).close();
}
}
private static Stream<Path> modules(Path javaHome) throws Exception {
Map<String, String> env = Collections.singletonMap("java.home", javaHome.toString());
Path jrtfsJar = …Run Code Online (Sandbox Code Playgroud) Google 文档现在支持下拉输入 ( Insert > Dropdown)。我正在使用 Apps 脚本访问 Google 文档,并且想要获取下拉列表的值。
我已阅读Get Google "pills" value as Plain text from Google docs with Google Apps Script,但不幸的是此解决方案不起作用。
但是,当在我的 Apps 脚本中获取该元素时,该元素似乎不受支持。
const statusCell = table.getRow(1).getCell(1);
const p = statusCell.getChild(0).asParagraph();
const c = p.getChild(0);
console.log("---> " + c);
console.log("tpe: " + c.getType());
// ---> UnsupportedElement
// tpe: UNSUPPORTED
Run Code Online (Sandbox Code Playgroud)
如果我用纯文本替换单元格的内容,那么一切正常。我只遇到下拉菜单的问题。
是否可以从 Apps 脚本获取 Google 文档中下拉列表的值?
从 Java 11 开始,如何读取另一个运行时映像的内容?
为了列出 Java 运行时映像的内容,JEP 220建议了以下解决方案:
URL 方案的内置 NIO
FileSystem提供程序jrt确保开发工具可以通过加载FileSystemURL 命名的来枚举和读取运行时映像中的类和资源文件jrt:/,如下所示:Run Code Online (Sandbox Code Playgroud)FileSystem fs = FileSystems.getFileSystem(URI.create("jrt:/")); byte[] jlo = Files.readAllBytes(fs.getPath("modules", "java.base", "java/lang/Object.class"));
此代码段有效,并允许我读取java/lang/Object.class正在执行代码的 Java 安装的运行时映像中的内容。
java/lang/Object.class考虑到它的 java home,我怎样才能让它读取另一个 Java 安装中的内容?
我已经阅读了这个 SO answer,它解释了如何从 Java 8 运行时读取 Java 运行时图像的内容。不幸的是,这不适用于较新的 Java 运行时,因为我相信 for 的文件系统jrt:/将始终指向当前的运行时映像。
我有这个数组:
array(2) {
[0]=> array(2) {
["url"]=> string(104) "aHR0cDovL3lvdXR1YmUuY29t"
["date"]=> string(19) "2014-01-06 21:44:39"
}
[1]=> array(2) {
["url"]=> string(28) "aHR0cDovL3d3dy5nb29nbGUuY29t"
["date"]=> string(19) "2014-01-06 14:28:32"
}
}
Run Code Online (Sandbox Code Playgroud)
如何解析$row['date']最早的日期?
java ×2
jvm ×2
arrays ×1
datetime ×1
forms ×1
google-docs ×1
memory-leaks ×1
parsing ×1
passwords ×1
php ×1
plaintext ×1
postgresql ×1
scala ×1
sha ×1
validation ×1